wpf共享资源字典文件参数?
如果所有样式和转换器都存储在共享资源字典文件(Styles.xaml)中,并且该文件是从各种窗口使用的 是否可以将参数传递到该文件,并将该参数传播到转换器wpf共享资源字典文件参数?,wpf,styles,styling,Wpf,Styles,Styling,如果所有样式和转换器都存储在共享资源字典文件(Styles.xaml)中,并且该文件是从各种窗口使用的 是否可以将参数传递到该文件,并将该参数传播到转换器 我正在寻找一种传递“origin”类型参数的方法,以便转换器能够知道它们是从哪个地方使用的?只是提示当前正在使用转换器的窗口/网格 有关带参数的转换器,请参阅本文。我假设您在资源字典中定义了转换器资源 我想知道这样做是否有效: 在每个窗口或用户控件的声明中添加对系统命名空间的引用 xmlns:sys="clr-namespace:S
我正在寻找一种传递“origin”类型参数的方法,以便转换器能够知道它们是从哪个地方使用的?只是提示当前正在使用转换器的窗口/网格 有关带参数的转换器,请参阅本文。我假设您在资源字典中定义了转换器资源
我想知道这样做是否有效: 在每个窗口或用户控件的声明中添加对系统命名空间的引用
xmlns:sys="clr-namespace:System;assembly=mscorlib"
然后在“资源”部分设置如下内容:
<Window.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="styles.xaml"/>
</ResourceDictionary.MergedDictionaries>
<sys:String x:Key="WinConvertParam">IDTextForThisWindow</sys:String>
</ResourceDictionary>
</Window.Resources>
{Binding SomeProperty,
Converter={StaticResource thatConverterIWrote},
ConverterParameter={StaticResource WinConvertParam}}
…然后,转换类中的Convert或ConvertBack方法就会知道正在使用它们的窗口,只要您在不同的文件中更改该
的值
你觉得怎么样?不确定你在共享资源字典中所说的“转换器”是什么意思。当我在XAML和WPF的上下文中看到这个术语时,我想到了IValueConverter。是别的吗?是的。伊瓦鲁转换器。Convert有一个可选参数。我希望能够通过resourcedictionary文件传递它是的,这篇文章是我如何发现转换器参数的。但它没有提到我的问题的任何解决方案