2012-04-03 39 views
1
结合

我有以下转换器:能见度转换器在XAML

public class MyConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) 
    { 
     return Visibility.Hidden; 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 
... 

我则在XAML使用此如下:

<Resources> 
    <conv:MyConverter x:Key="MyValToVisibilityConverter" /> 
</Resources> 

... 

<CheckBox x:Name="MyCheckBox" Content="Should not be visible" 
       Visibility="{Binding ElementName=Visibility, Converter={StaticResource MyValToVisibilityConverter}}" 
... 

这编译和运行,并始终显示为复选框可见。

+0

你的哪个XAML元素被命名为“能见度” ? VS输出窗口中是否有错误提示? – Gene 2012-04-03 10:43:20

回答

3

您正在为绑定设置错误的参数。

眼下,绑定的目标是一个名为Visibility的元素,它是最有可能的一个错误:

Visibility="{Binding ElementName=Visibility, Converter={...}}" 

应该仅仅是

Visibility="{Binding Converter={...}}"