C# 防止单元格背景在焦点上变白
我有一个Xceed datagrid,其中每个单元格模板都有一个透明的背景。最近,我在一个单元格模板中放置了一个只读文本框。这允许用户单击单元格并选择文本的子集。然而,一个副作用是当我点击文本框时,单元格变成白色 以下是专栏:C# 防止单元格背景在焦点上变白,c#,wpf,datagrid,xceed,C#,Wpf,Datagrid,Xceed,我有一个Xceed datagrid,其中每个单元格模板都有一个透明的背景。最近,我在一个单元格模板中放置了一个只读文本框。这允许用户单击单元格并选择文本的子集。然而,一个副作用是当我点击文本框时,单元格变成白色 以下是专栏: <xcdg:Column Title="{x:Static rcer:CEWR.Field_PinyinDefinition}" AllowGroup="False"
<xcdg:Column Title="{x:Static rcer:CEWR.Field_PinyinDefinition}"
AllowGroup="False"
ReadOnly="True"
CellContentTemplate="{StaticResource ceItemsCellContentTemplate}"
FieldName="Items">
<xcdg:Column.TitleTemplate>
<DataTemplate>
<TextBlock Foreground="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}" Text="{Binding}" />
</DataTemplate>
</xcdg:Column.TitleTemplate>
</xcdg:Column>
模板呢
<DataTemplate x:Key="ceItemsCellContentTemplate">
<DataTemplate.Resources />
<ItemsControl Margin="0"
Background="Transparent"
ItemTemplate="{StaticResource ceItemTemplate}"
ItemsSource="{Binding}"
Padding="0"
Style="{StaticResource itemsBoxStyle}">
<ItemsControl.ItemContainerStyle>
<Style TargetType="ContentPresenter">
<Style.Triggers>
<Trigger Property="IsFocused" Value="True">
</Trigger>
</Style.Triggers>
</Style>
</ItemsControl.ItemContainerStyle>
<ItemsControl.LayoutTransform>
<ScaleTransform ScaleX="{Binding Zoom, Source={StaticResource ceShowSettings}}" ScaleY="{Binding Zoom, Source={StaticResource ceShowSettings}}" />
</ItemsControl.LayoutTransform>
</ItemsControl>
</DataTemplate>
在这里,它将单元格背景变为白色
我试图搞乱ItemsControl,但不是这样。它一定有点像CellContentStyle,目前还无法访问
更新。我可以设置CanBeCurrentWhenReadOnly=“False”
当我单击文本框定义时,背景将保持不变,但我将无法与单元格的内容交互。下面介绍如何操作
<Style TargetType="{x:Type xcdg:DataCell}">
<Setter Property="CurrentBackground" Value="Transparent"/>
</Style>