我想知道如何在 XAML 中分配 Silverlight 中 Type 类型的依赖属性,因为标记扩展 {x:Type} 不存在?
谢谢,
最佳答案
根据您的要求,可能会采用一系列不同的方法。以下是非常通用的解决方案。
创建一个将字符串转换为类型的值转换器:-
public class StringToTypeConverter : IValueConverter
{
#region IValueConverter Members
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return Type.GetType((string)value);
}
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
throw new NotImplementedException();
}
#endregion
}
将此转换器的实例放置在目标对象具有可见性的资源字典中,例如 App.xaml:-
<Application.Resources>
<local:StringToTypeConverter x:Key="STT" />
</Application.Resources>
现在,在您的 Xaml 中,您可以为这样的属性分配一个值:-
<TextBox Text="{Binding Source='System.Int32,mscorlib', Converter={StaticResource STT}}" />
关于.net - 如何创建类型类型的依赖属性,并在 XAML 中分配它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2445970/