只是想知道是否可以仅在禁用的项目上显示 WPF (而不是在启用项目时)。
我想给用户一个工具提示,解释为什么项目当前被禁用。
我有一个IValueConverter
反转布尔IsEnabled
属性绑定。但在这种情况下似乎不起作用。ToolTip
启用和禁用项目时都会显示。
因此可以将ToolTip.IsEnabled
属性专门绑定到项目自己的!IsEnabled
?
我猜这个问题很简单,但无论如何这里的代码示例:
public class BoolToOppositeBoolConverter : IValueConverter
{
#region IValueConverter Members
public object Convert(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
if (targetType != typeof(bool))
throw new InvalidOperationException("The target must be a boolean");
return !(bool)value;
}
public object ConvertBack(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
if (targetType != typeof(bool))
throw new InvalidOperationException("The target must be a boolean");
return !(bool)value;
}
#endregion
}
和绑定:
<TabItem Header="Tab 2" Name="tabItem2" ToolTip="Not enabled in this situation." ToolTipService.ShowOnDisabled="True" ToolTipService.IsEnabled="{Binding Path=IsEnabled, ElementName=tabItem2, Converter={StaticResource oppositeConverter}}">
<Label Content="Item content goes here" />
</TabItem>
谢谢各位。