繁体   English   中英

绑定错误在ToolTip可见性上

[英]Binding error On ToolTip visibility

我试图将ToolTip的可见性属性绑定到Button的IsEnabled

 <Button Name="bbb" Content="Train" Command="{Binding TrainCmd}" ToolTipService.ShowOnDisabled="True">
      <Button.ToolTip>
          <ToolTip Content="{Binding TrainToolTip}" Visibility="{Binding IsEnabled, Converter={StaticResource InverseBooleanToVisibilityConverter}, ElementName=aaa}">
          </ToolTip>
      </Button.ToolTip>
 </Button> 

但我收到以下错误:

“ System.Windows.Data错误:4:找不到引用为'ElementName = aaa'的绑定源。BindingExpression:Path = IsEnabled; DataItem = null;目标元素为'ToolTip'(Name ='');目标属性为'可见性”(类型为“可见性”)”

我也试过

 <Button Content="Train" Command="{Binding TrainCmd}" ToolTipService.ShowOnDisabled="True">
    <Button.ToolTip>
        <ToolTip Content="{Binding TrainToolTip}" Visibility="{Binding IsEnabled, Converter={StaticResource InverseBooleanToVisibilityConverter}, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type Button}}}"/>
    </Button.ToolTip>
 </Button>

但后来我明白了

“ System.Windows.Data错误:4:找不到引用'RelativeSource FindAncestor,AncestorType ='System.Windows.Controls.Button',AncestorLevel ='1''的绑定源。BindingExpression:Path = IsEnabled; DataItem = null;目标元素是“工具提示”(名称=“);目标属性是“可见性”(类型“可见性”)”

ToolTip与它的PlacementTarget不在同一视觉树中。

 <Button Name="bbb" Content="Train" Command="{Binding TrainCmd}" ToolTipService.ShowOnDisabled="True">
      <Button.ToolTip>
           <ToolTip Content="{Binding TrainToolTip}" Visibility="{Binding PlacementTarget.IsEnabled, Converter={StaticResource InverseBooleanToVisibilityConverter}, RelativeSource={RelativeSource Self}">
            </ToolTip>
       </Button.ToolTip>
 </Button> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM