wpf 外部资源引用

本文介绍了如何在WPF应用程序中利用App.xaml的Startup事件加载外部资源文件,通过指定文件路径将资源字典合并到应用程序资源中。在启动过程中,即使出现资源找不到的错误,也不会影响程序启动,只需确保资源文件位于Debug目录下。资源使用时,通过StaticResource绑定对应的x:Key即可。这种方法允许外部调用资源,避免了内部资源的优先级问题。

1.App.xaml文件使用Startup事件

在这里插入图片描述

2.Startup事件中写法

在这里插入图片描述

private void Application_Startup(object sender, StartupEventArgs e)
{
    var dictionaryFilePath1 = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "放资源的文件", "Dictionary1.xaml");
    ResourceDictionary initializeDictionary = new ResourceDictionary
    {
        Source = new Uri(dictionaryFilePath1, UriKind.RelativeOrAbsolute)
    };
    this.Resources.MergedDictionaries.Add(initializeDictionary);
}

3.资源写好后直接在wpf界面使用 Style="{StaticResource 对应x:Key的名字},一定要把装有资源的文件夹放在DeBug里面,这样可以在外部调用(如果报错不要管直接回引用外部资源对应x:Key的名字)

注:不要内部引用资源,因为会优先调用内部资源
在这里插入图片描述
在这里插入图片描述
报错不影响启动,原因是启动程序会在DeBug里面里面找资源

4.把装有资源的文件夹放在DeBug里面

在这里插入图片描述

5.运行

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值