【发布时间】:2015-11-22 07:22:29
【问题描述】:
我在 wpf 中有一个数据网格,其模板列包含三个按钮。单击这些按钮中的任何一个时,包含这些按钮的行也会突出显示。我想禁用此行突出显示和选择。仅不需要突出显示,不应选择行。
<DataGridTemplateColumn CanUserResize="False" ClipboardContentBinding="{x:Null}" Width="80" Header="L-Op">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel x:Name="LogicalPanel" Orientation="Horizontal">
<Button Content="{Binding LogicalOperator, Converter={StaticResource LogicalOperatorValueConverter}}" Foreground="#548DD4" FontStyle="Italic"
Click="LogicalOperator_Click" VerticalAlignment="Center" Margin="3,0,0,3" Width="30">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<ContentPresenter />
</ControlTemplate>
</Button.Template>
</Button>
<Button x:Name="btnAdd" Height="20" Width="20" Style="{StaticResource ShowHideButton}" Margin="2,0" Click="btnAdd_Click" VerticalAlignment="Center" >
<Image Source="Add.png" />
</Button>
<Button x:Name="btnRemove" Height="20" Width="20" Style="{StaticResource ShowHideButton}" Click="btnRemove_Click" VerticalAlignment="Center">
<Image Source="remove.jpg" />
</Button>
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
【问题讨论】:
-
你试过 PreviewMouseLeftButtonDown 吗?
-
不,我对 WPF 有点陌生...因此,没有尝试 PreviewMouseLeftButtonDown。我对将 Handled 设置为 true 和事件冒泡有一个模糊的想法,但它在 MouseLeftButtonDown 事件中不起作用