测试converterparameter的类型是System.Windows.Visibility

时间:2015-02-18 15:29:44

标签: c# enums

我需要检查转换器参数是否为System.Windows.Visibility:

类型
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
    //....
    if (parameter is Visibility)
    {
        Console.WriteLine("parameter is Visibility");
    }
    if (parameter is Enum)
    {
        Console.WriteLine("parameter is Enum");
    }
    if (parameter.GetType().IsEnum)
    {
        Console.WriteLine("parameter.GetType().IsEnum");
    }
    //.......
}

如果条件评估为真,则三者中的任何一个都不是,推荐的第二和第三个测试在其他SO问题中接近。调试器将参数指示为System.Windows.Visibility.Collapsed,因此没有问题。 我可以忽略哪个明显的事实?

1 个答案:

答案 0 :(得分:1)

默认情况下,输入ConverterParameter的文本被视为字符串,除非使用StaticResource

引入对象实例