在我的WPF页面中,我创建了一种样式,我想将其应用于datagridcell。这是代码:
<Style x:Key="dgTextCol" TargetType="datagridcell">
<EventSetter Event="PreviewMouseLeftButtonUp" Handler="editInEditor"/>
<Setter Property="Background" Value="#f7f6f6" />
<Setter Property="BorderThickness" Value="0" />
<Setter Property="ToolTip" Value="{Binding RelativeSource={RelativeSource Self},Path=Text}"/>
<Setter Property="Padding" Value="6,12" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type datagridcell}">
<Border Padding="{TemplateBinding Padding}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" snapsToDevicePixels="True">
<ContentPresenter snapsToDevicePixels="{TemplateBinding snapsToDevicePixels}" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<DataTrigger Binding="{Binding IsDirty}" Value="True">
<Setter Property="Background" Value="{StaticResource IsDirtyColor}" />
<Setter Property="BorderBrush" Value="{StaticResource IsDirtyColor}" />
</DataTrigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="BorderBrush" Value="Transparent"/>
<Setter Property="Background" Value="#eeeeee"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
<Trigger Property="IsSelected" Value="False">
<Setter Property="Background" Value="#f7f6f6"/>
<Setter Property="Foreground" Value="#000000"/>
</Trigger>
<Trigger Property="IsEditing" Value="true">
<Setter Property="Background" Value="#ffffff" />
<Setter Property="Padding" Value="6,12"/>
<Setter Property="BorderThickness" Value="0"/>
</Trigger>
</Style.Triggers>
</Style>
除了工具提示之外,它都可以正常工作,因为我无法获取TextBlock的值。基本上没有工具提示出现。有帮助吗?