我有一個帶有窗格的RadDocking
,每個窗格都擁有獨特的DataContext自定義對象。 對於每個窗格,我想用工具提示展示標題。標題和工具提示都應該綁定到窗格的DataContext的某個屬性。Telerik RadDocking在浮動窗口標題上顯示工具提示
因此,我寫的是這樣的:
<UserControl.Resources>
<DataTemplate x:Key="DataTemplateTitleHeaderTooltip">
<TextBlock Text="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type telerikDocking:RadPane}}, Path=Content.DataContext.TitleTootip}"
ToolTip="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type telerikDocking:RadPane}}, Path=Content.DataContext.TitleTootip}"
telerik:WindowHost.HitTestable="True" />
</DataTemplate>
</UserControl.Resources>
<telerikDocking:RadDocking>
<telerikDocking:RadDocking.DocumentHost>
<telerikDocking:RadSplitContainer>
<telerikDocking:RadPaneGroup>
<telerikDocking:RadPane HeaderTemplate="{StaticResource DataTemplateTitleHeaderTooltip}">
<Border x:Name="Target"
Background="HotPink" />
</telerikDocking:RadPane>
<telerikDocking:RadPane Header="Pane02">
<Border Background="Fuchsia" />
</telerikDocking:RadPane>
</telerikDocking:RadPaneGroup>
</telerikDocking:RadSplitContainer>
</telerikDocking:RadDocking.DocumentHost>
</telerikDocking:RadDocking>
當 「目標」 具有以下的DataContext:
public class MyModel : DependencyObject
{
#region TitleTootip
/// <summary>
/// Gets or sets the tool tip for our model
/// </summary>
public string TitleTootip
{
get { return (string) GetValue(TitleTootipProperty); }
set { SetValue(TitleTootipProperty, value); }
}
/// <summary>
/// Identifies the <see cref="TitleTootip"/> property.
/// </summary>
public static readonly DependencyProperty TitleTootipProperty =
DependencyProperty.Register("TitleTootip", typeof (string), typeof (MyModel), new UIPropertyMetadata(""));
#endregion
}
當窗格停靠到DocumentHost這工作得很好。但是,當我分離窗格時,標題和工具提示消失。
爲了澄清,如果標題和工具提示不僅會出現在停靠狀態,而且還會出現在窗口浮動狀態時,這將非常好。
pure-xaml解決方案絕對是首選。
建議的解決方案工作正常:標題和標題均提供工具提示。 但是,當鼠標懸停在TextBlock上(並且窗格處於浮動狀態)時,將'telerik:WindowHost.HitTestable ='True''設置爲禁用拖放操作。 任何想法如何啓用拖放和工具提示的演示文稿? – DonVito