0

datagridの列ヘッダーにマウスオーバーすると、その閉じるボタンにヘッダーがポップアップ表示され、列が削除されます。

ここに画像の説明を入力してください

ヘッダーのマウスオーバーをキャプチャするために、以下のXAMLがあります。

<Style TargetType="{x:Type DataGridColumnHeader}">
    <Setter Property="HorizontalContentAlignment" Value="Center" />
    <Setter Property="Height" Value="26" />
    <Style.Triggers>
        <Trigger Property="IsMouseOver" Value="True">
            <Setter Property="Background" Value="{DynamicResource ActiveItemButtonPressedBrush}" />
             ?????????? what should I write here to create that button ??????????
        </Trigger>
    </Style.Triggers>
</Style>

私はWPFを初めて使用するので、XAMLの生成を手伝ってください。

4

1 に答える 1

0

DataGrid 列の HeaderTemplate をオーバーライドする必要があります

....

<DataTemplate>
    <Button>
       <Button.Style>
          <Style TargetType="{x:Type Button}">
              <Setter Property="Template">
                   <Setter.Value>
                       <ControlTemplate TargetType="{x:Type Button}">
                          ... do you contents here
                          ..text block as visible
                          <Button x:Name="btn"..round button as collapsed

                       <ControlTemplate.Triggers>
                          <Trigger Property="Button.IsMouseOver" Value="True">
                               <Setter Property="Background" Value="{DynamicResource ActiveItemButtonPressedBrush}" />
                               <Setter TargetName="btn" Property="Visibility" Value="Visible"/>


    </Trigger>

              </Setter>
于 2012-04-25T19:46:10.180 に答える