0

当用户按下“搜索”(Sök)时,列表被填充。搜索完成后,通过触发器“IsEnabled”选择了第一行,问题是第一个单元格不是(见图)。

问题的图片

这是我的 DatagridCells 样式代码

<Style TargetType="DataGridCell">
  <Setter Property="Padding"
          Value="0,4,0,4" />
  <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>
  <Setter Property="BorderBrush"
          Value="Transparent" />

  <Style.Triggers>
    <Trigger Property="IsSelected"
             Value="True">
      <Setter Property="Background"
              Value="#7dc0dc" />
      <Setter Property="BorderThickness"
              Value="0" />
      <Setter Property="Foreground"
              Value="#fff" />
    </Trigger>
    <Trigger Property="IsEnabled"
             Value="False">
      <Setter Property="Background"
              Value="#7dc0dc" />
      <Setter Property="BorderThickness"
              Value="0" />
      <Setter Property="Foreground"
              Value="#fff" />
    </Trigger>
  </Style.Triggers>
</Style>

请注意,如果用户刷新搜索,则一旦再次填充列表,该行就会被正确选择。如果用户手动单击该行,它也会被正确选择。该错误仅在进行新搜索时发生。

我错过了一些神奇的工作触发器属性吗?

4

0 回答 0