4
트리거되지 않습니다 .. 여기 의 ContextMenu - 이벤트 내가이 주제에 대해 많이 검색 한
내 질문입니다 .. 제가 WPF 아주 새로운하다고 말하고 있습니다 나는이 DataGrid - 행에 컨텍스트 메뉴가 필요합니다.이 코드가 있습니다
<Grid>
<TabControl>
<TabItem>
<Grid>
<DataGrid Grid.Row="2" Grid.ColumnSpan="3" AutoGenerateColumns="False" HorizontalAlignment="Stretch" Margin="6,6,0,0" Name="gridErrors"
VerticalAlignment="Stretch" AlternatingRowBackground="Gainsboro" AlternationCount="2" SelectionChanged="gridErrors_SelectionChanged"
IsEnabled="False">
<DataGrid.Resources>
<ContextMenu x:Key="DataRowContextMenu">
<MenuItem Header="Detaillierte Fehlerbehandlung" />
</ContextMenu>
</DataGrid.Resources>
<DataGrid.RowStyle>
<Style TargetType="{x:Type DataGridRow}" x:Name="styleForDataRow">
<EventSetter Event="PreviewMouseLeftButtonDown" Handler="OnDataGridRow_PreviewMouseLeftButtonDown" />
<Setter Property="ContextMenu" Value="{StaticResource DataRowContextMenu}">
<!--<Setter.Value>
<ContextMenu>
<MenuItem Header="Detaillierte Fehlerbehandlung" />
</ContextMenu>
</Setter.Value>-->
</Setter>
</Style>
</DataGrid.RowStyle>
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding Number}" Header="Input Nummer" IsReadOnly="True"></DataGridTextColumn>
<DataGridTextColumn Binding="{Binding Error}" Header="Meldung" IsReadOnly="True"></DataGridTextColumn>
<DataGridTextColumn Binding="{Binding DetailInfo}" Header="Detail" IsReadOnly="True"></DataGridTextColumn>
</DataGrid.Columns>
</DataGrid>
</TabItem>
</TabControl>
</Grid>
이 잘 작동, 내가 행을 마우스 오른쪽 clickin하여 상황에 맞는 메뉴를 볼 수 있습니다,하지만 유일한 것은 내가 왼쪽, 경우에만 (이벤트 해고되지 않는 것입니다 없는 사람이 나를 ..이 사전에)
감사를 많이 내 하루 :-)을 절약 할 도울 수 있다면
내가 그것을 감사하겠습니다) 상황에 맞는 메뉴와 함께, 그리드 자체 CLIK!
kr!
하, 맞습니다! 작동하고있어. MenuItem 이벤트와 함께 더 이상 필요하지 않기 때문에 eventsetter를 제거했습니다. EventSetter에서 너무 고정되어 있습니다. 대단히 감사합니다! – FiorinaN
Silverlight 대신 WPF를 사용하는 경우 Command는 click 이벤트 처리기보다 훨씬 강력한 기능을 제공합니다. –