So I was using a RadGridView to display some data and I wanted to add a tooltip with more information. Shouldn’t be too difficult. I of course checked through intellisense to see if there were any obviously named properties for setting a tooltip.
I checked on the RadGridView tag for the properties and I also checked the GridViewDataColumn for it. Didn’t come up with anything so I Binged until I found a potential solution. It didn’t really make sense to me and the solution had me doing a lot of what seemed like extra stuff. It was adjusting the tooltip using the styles for the cell. So, then it hit me that I was thinking about this the wrong way. Since I just wanted text and a tooltip why don’t I just add that in?
So I took control of things and I just used a template for the column instead. Here is the quick and easy way to add a tooltip into a RadGridView.
<grid:RadGridView x:Name="RadGridView1" AutoGenerateColumns="False">
<grid:RadGridView.Columns>
<grid:GridViewColumn Header="Person">
<grid:GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding NickName}"
ToolTipService.ToolTip="{Binding FullName}"
VerticalAlignment="Center" />
</DataTemplate>
</grid:GridViewColumn.CellTemplate>
</grid:GridViewColumn>
<grid:GridViewDataColumn Header="Place"
DataMemberBinding="{Binding Place}" />
<grid:GridViewDataColumn Header="Thing"
DataMemberBinding="{Binding Thing}" />
</grid:RadGridView.Columns>
</grid:RadGridView>
And there you have a tooltip on the text of a cell in a RadGridView. You can obviously add different content items into the DataTemplate so that you can support more advanced templates. Just throw the tooltip on the root element inside the DataTemplate and you’ll be set.
Comments