Wpf 如何使用xaml资源字典中定义的样式?
我有一个Wpf 如何使用xaml资源字典中定义的样式?,wpf,Wpf,我有一个IMultiValueConverter,它可以动态创建TextBlock控件。问题是它没有风格 如何告诉我的新TextBlock使用在我的XAML资源字典中定义的样式?我以前从未尝试过这种方法,根据转换器的工作,我认为如果XAML资源字典是外部的,那么将其链接到显示TextBlock的窗口: <Window.Resources> <ResourceDictionary Source="[the path to the resource dictionary]"
IMultiValueConverter
,它可以动态创建TextBlock
控件。问题是它没有风格
如何告诉我的新
TextBlock
使用在我的XAML资源字典中定义的样式?我以前从未尝试过这种方法,根据转换器的工作,我认为如果XAML资源字典是外部的,那么将其链接到显示TextBlock的窗口:
<Window.Resources>
<ResourceDictionary Source="[the path to the resource dictionary]"/>
</Window.Resources>
见以下问题: 使用
SetResourceReference
,相当于在Xaml中使用DynamicResource
因此,如果您的样式
具有myTextBlockStyle键
TextBlock textBlock = new TextBlock();
textBlock.SetResourceReference(FrameworkElement.StyleProperty, "myTextBlockStyle");
我已经像你展示的那样链接了我的资源字典。我正在尝试为通过
IMultiValueConverter
动态创建的TextBlock
使用特定样式(基于键)。我刚刚在您发表评论的同时更新了我的答案。尝试FindResource方法,看看它是否有助于定位您的样式。我只在元素中嵌入了多值转换器,比如连接名字和姓氏,我没有使用它们动态创建控件。
TextBlock textBlock = new TextBlock();
textBlock.SetResourceReference(FrameworkElement.StyleProperty, "myTextBlockStyle");