これは、コメントのある Excel セルから得られる動作です。
1) マウスをセルのどこかに置くと、コメントが黄色のツールチップのようにポップアップします。
2)マウスカーソルがセル上にある限り、コメントは無期限に表示されます
DataGridColumnHeader のみで同様の機能が必要です。
私は次のように始めました:
<DataGridTextColumn Binding="{Binding Path=SomeProperty}">
<DataGridTextColumn.Header>
<TextBlock Text="MyColHeader" Background="red" >
<TextBlock.ToolTip>
<StackPanel Width="400">
within stack panel make format as fancy as i like, works great;
</StackPanel>
</TextBlock.ToolTip>
</TextBlock>
</DataGridTextColumn.Header>
</DataGridTextColumn>
それに関する問題は、マウスが列ヘッダーのテキストの上に置かれたときにのみツールチップがポップアップすることです。つまり、私の例では、テキスト「MyColHeader」であり、セルのどこにもありません。
さらに1時間後、ポイント1)に対処するものを思いつきました:
<DataGridTextColumn
Header="MyColHeader"
Binding="{Binding Path=SomeProperty}">
<DataGridTextColumn.HeaderStyle>
<Style TargetType="{x:Type DataGridColumnHeader}">
<Style.Triggers>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="ToolTip">
<Setter.Value>
<StackPanel Width="400">
make formatting as fancy as i like, works great;
</StackPanel>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>
</Style>
</DataGridTextColumn.HeaderStyle>
</DataGridTextColumn>
残りの質問は、ポイント 2) に対処する必要があることです。つまり、カーソルが col ヘッダー上にある限り、ツールチップを無期限に表示したままにします。