gpt4 book ai didi

wpf - 在代码wpf中访问资源字典

转载 作者:行者123 更新时间:2023-12-02 20:38:09 24 4
gpt4 key购买 nike

同一程序集中的同一行代码适用于一个测试装置,但不适用于另一测试装置。这是代码行:

var dic = new ResourceDictionary { Source = new Uri("pack://application:,,,/MyApp.Wpf;component/ImageResources.xaml") };

我在其他测试装置中遇到的错误是 System.UriFormatException:无效的 URI:指定的端口无效。

uri 字符串也适用于 xaml。有没有更好的方法在代码中加载资源字典?

干杯,
贝里尔

===更新===

正如我在this posting中发现的那样,由于未注册包方案,因此发生了无效端口,这可以使用如下代码来完成:

if (!UriParser.IsKnownScheme("pack"))
UriParser.Register(new GenericUriParser(GenericUriParserOptions.GenericAuthority), "pack", -1);

我猜测测试装置能够使用包方案加载字典而不会出现错误,是因为 SUT 是那里的用户控件,并且在创建用户控件的实例时以某种方式加载资源。

最佳答案

我使用的是UriKind,例如

var resource = new ResourceDictionary
{
Source = new Uri("/myAssemblyName;component/Themes/generic.xaml",
UriKind.RelativeOrAbsolute)
};

HTH

关于wpf - 在代码wpf中访问资源字典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3553329/

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