是否可以将转换器应用于xaml中控件的数据源?
或者还有另一种方法可以做到这一点。
基本上我有一个接受特定类型对象的自定义控件。该对象与该控件紧密绑定。我不想在我的视图模型中转换为此类型。所以我希望能够绑定到常规属性(如List)并让它通过转换器自动转换为我的对象。
我尝试过这样的事情。
ItemsSource="{Binding CurrentTables, Converter={x:Static cconverters:SpyFilterDataObjectConverter}}"
答案 0 :(得分:1)
x:Static
的语法为namespace:Type.StaticMember
,您应该实例化转换器并将其作为静态属性公开。
或者,您可以在Application.Resources
中的App.xaml
中创建实例,然后可以使用其密钥在整个应用程序中将其作为静态资源引用。
答案 1 :(得分:1)
嗯,对我来说使用这种转换器似乎并不好。基本上,转换器只执行一次转换操作,因此您不会收到任何更新。我使用了不同的方法 - 只需创建一些包含初始集合的包装器(它应该实现INotifyCollectionChanged)和一些将初始对象转换为包装对象的包装策略。