测试 converterparameter 是否为 System.Windows.Visibility 类型
Test if converterparameter is of type System.Windows.Visibility
我需要检查转换器参数的类型是否为 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");
}
//.......
}
三个 if 条件都不计算为真,在其他 SO 问题中推荐使用第二个和第三个测试方法。调试器指示参数为 System.Windows.Visibility.Collapsed
,所以没有问题。
我忽略了哪个明显的事实?
默认情况下,输入到 ConverterParameter 中的文本被视为字符串,除非使用 StaticResource
引入对象实例
我需要检查转换器参数的类型是否为 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");
}
//.......
}
三个 if 条件都不计算为真,在其他 SO 问题中推荐使用第二个和第三个测试方法。调试器指示参数为 System.Windows.Visibility.Collapsed
,所以没有问题。
我忽略了哪个明显的事实?
默认情况下,输入到 ConverterParameter 中的文本被视为字符串,除非使用 StaticResource