【发布时间】:2013-08-29 09:41:07
【问题描述】:
我有一个DataGrid,我想在双击该行时显示另一个表单,但即使我正在滚动数据网格,此事件也会触发。如何使其仅在双击该行时触发?
我正在使用 MVVM 模式。
<DataGrid Name="dgScopeRecords" Grid.Row="1" Grid.ColumnSpan="3" IsReadOnly="True" ItemsSource="{Binding Model.TableScopeRecords}" SelectedIndex="{Binding Model.SelectedIndex}" Margin="0,10,0,0" AutoGenerateColumns="False" SelectionMode="Single">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MouseDoubleClick">
<i:InvokeCommandAction Command="{Binding ViewScopeRecordCommand}"/>
</i:EventTrigger>
</i:Interaction.Triggers>
<DataGrid.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="#dca188"/>
</DataGrid.Resources>
<DataGrid.Columns>
<DataGridTextColumn Header="{x:Static Resources:Translations.RecordsInspection_ColumnScope}" Binding="{Binding Scope.ScopeName}" Width="250"/>
<DataGridTextColumn Header="{x:Static Resources:Translations.RecordsInspection_ColumnScopeType}" Binding="{Binding Scope.ScopeType.ScopeTypeName}" Width="100"/>
</DataGrid.Columns>
</DataGrid>
【问题讨论】:
标签: wpf xaml datagrid eventtrigger