Chcę mieć przycisk w każdym wierszu widoku GridView, aby wykonać akcje w tym wierszu. Mogę uzyskać kliknięcie, ale jak określić, do którego wiersza należy ten przycisk?Przycisk w GridView: Skąd mam wiedzieć, który element?
Co mam w tej chwili jest tak:
<ListView ItemsSource="{Binding Calibrations}">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn Header="Voltage [kV]" Width="70" DisplayMemberBinding="{Binding Voltage}" />
<GridViewColumn Header="Filter" Width="100" DisplayMemberBinding="{Binding FilterName}" />
<GridViewColumn Header="Calibration Date" Width="100" DisplayMemberBinding="{Binding CalibrationDate}" />
<GridViewColumn Header="Calibration" Width="60">
<GridViewColumn.CellTemplate>
<DataTemplate>
<Button Content="Start" Click="OnStart" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
private void OnStart(object sender, RoutedEventArgs e)
{
// how do I know, on which item this button is
}
Czy jest może jakiś sposób powiązać pozycję na tym samym wierszu RoutedEventArgs?
Co o sprawdzenie wybranego właściwość elementu siatki? –
Nie wiem WPF, ale asp.net ma zdarzenie OnCommand, w którym można określić argumenty CommandName i CommandType, które zostaną przekazane do zdarzenia obsługi. –