私のコントロールの 1 つにデータグリッドがあり、リソース ディクショナリ ファイルにスタイルが設定されています。ToolTip を表示するために、スタイルで Setter を使用します。
<Style TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="SnapsToDevicePixels" Value="True" />
<Setter Property="ToolTipService.ToolTip" Value="{Binding}"/>
このスタイルを使用する DataGrid を使用したコントロールで、各列ヘッダーのツールヒントに特定のテキストを設定しようとしましたが、機能しません。ToolTip は常にヘッダーのテキストと同じテキストを表示しています。
<DataGridTextColumn x:Name="iEnumberColumn" Binding="{Binding IEnumber}" Width="100" Header="Column A" ToolTipService.ToolTip="Column A Tooltip" />
RelativeSource Self、Dynamic、および Static リソースを試しましたが、どちらも機能しません。また、スタイルに Setter がない場合、ToolTip はまったく表示されません。コントロール内で追加の Style を使用すると、機能しますが、Dictionary に設定された元の Style が失われます。
各DataGrid列を定義するときに特定のテキストを追加するために、スタイルにツールチップを設定する方法を提案していただけますか?
おそらくこれが唯一の方法ではありませんが、簡単な解決策を見つけました。以下のコードを置き換えました。
<DataGridTextColumn x:Name="iEnumberColumn" Binding="{Binding IEnumber}" Width="100" Header="Column A" ToolTipService.ToolTip="Column A Tooltip" />
これで:
<DataGridTextColumn x:Name="iEnumberColumn" Binding="{Binding IEnumber}" Width="100" >
<DataGridTextColumn.Header>
<TextBlock Text="ColumnA" ToolTip="Column A Tooltip"/>
</DataGridTextColumn.Header>
</DataGridTextColumn>
そして、リソース ディクショナリ ファイルからツールチップのセッターを削除しました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加