Załóżmy, że mamy zdefiniowany UniformGrid, 9x9 elementów i każda z komórek siatki zawiera przycisk:
<UniformGrid Rows="9" Columns="9"> <Button Click="btn_Click" /> <Button Click="btn_Click" /> <Button Click="btn_Click" /> (...) </UniformGrid>
Jak z poziomu obsługi zdarzeń mogę dostać pozycję przycisku w Gridzie tzn. jego kolumnę i wiersz?
Próbowałem czegoś takiego, ale zwraca zawsze 0,0 :
private void btn_Click(object sender, RoutedEventArgs e) { var element = (UIElement)e.Source; int c = Grid.GetColumn(element); int r = Grid.GetRow(element); }
Dzieje się tak dlatego, że nie ma uzupełnionych attached properties dla każdego z przycisków, czyli brakuje czegoś takiego:
<Button Click="btn_Click" Grid.Row="1" Grid.Column="1"/>
Czy pomimo braku attached properties, da się jakoś odczytać pozycję poszczególnych przycisków?