gpt4 book ai didi

c# - 通过代码将 MergedDictionaries 添加到样式

转载 作者:太空宇宙 更新时间:2023-11-03 15:32:05 24 4
gpt4 key购买 nike

我在资源文件中有这个样式:

<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="Colors.xaml"/>
</ResourceDictionary.MergedDictionaries>
<Style TargetType="TextBox" x:Key="StandardTextBox"/>
<Setter Property="Foreground" Value="{StaticResource Color1}"/>
</Style>
</ResourceDictionary>

(Colors.xaml 包含我的画笔)

我的代码使用样式:

ResourceDictionary TetxboxStyles = new ResourceDictionary();
TetxboxStyles.Source = (new Uri("TextboxStyles.xaml", UriKind.RelativeOrAbsolute));
Resources.MergedDictionaries.Add(TetxboxStyles);
tb_input.Style = (Style)Find("StandardTextBox");

这没有问题,但是当我通过代码而不是在 TextboxStyles-File 中动态添加 Colors-Resource 时它不起作用:

ResourceDictionary TetxboxStyles = new ResourceDictionary();
TetxboxStyles.Source = (new Uri("TextboxStyles.xaml", UriKind.RelativeOrAbsolute));

//Adding the Colors.xaml Resource
ResourceDictionary Colors = new ResourceDictionary();
brushes.Source = (new Uri("Colors.xaml", UriKind.RelativeOrAbsolute));
TetxboxStyles.MergedDictionaries.Add(Colors);

Resources.MergedDictionaries.Add(TetxboxStyles);
tb_input.Style = (Style)Find("StandardTextBox");

输出错误:

System.Windows.Markup.XamlParseException

“{DependencyProperty.UnsetValue}”

最佳答案

我用 DynamicResource 替换了 StaticResource 并且它有效

关于c# - 通过代码将 MergedDictionaries 添加到样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33482667/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com