0

常に編集モードのカスタムWpfToolkit DataGrid (.net 3.5) があり、標準の TextBox と同じ境界線を持たせたいと考えています。

私がしようとしました:

  1. コントロールの BorderBrush を TextBox の BorderBrush にバインドします (TextBox の BorderBrush が null のようです)。
  2. 実行時に TextBox の BorderBrush を読み取ります (常に null でした)。
  3. また、BorderBrush を手動で設定しようとしましたが、TextBox には Windows テーマによって異なる境界線ブラシがあります。

通常の TextBox の境界線は次のようになります。

ここに画像の説明を入力

私のコントロールは次のようになりますが、テキスト ボックスと同じ境界線を持つ必要があります。

ここに画像の説明を入力

編集:

私のDataGridセルスタイル:

<Style TargetType="{x:Type Controls:DataGridCell}" x:Key="DefaultExcelCell">
    <Setter Property="BorderThickness" Value="0"/>
    <Setter Property="TextBlock.TextAlignment" Value="Right" />
    <Style.Triggers>
        <Trigger Property="IsSelected" Value="True">
            <Setter Property="Background" Value="Transparent" />
            <!-- The text color of a selected cell (Black = same as not selected cell) -->
            <Setter Property="Foreground" Value="Black" />
        </Trigger>
    </Style.Triggers>
</Style>
4

1 に答える 1