【问题标题】:How does the WPF Designer know which resource to use?WPF 设计器如何知道要使用哪个资源?
【发布时间】:2023-03-26 06:45:02
【问题描述】:

我有一个没有 application.xaml 的 WPF 应用程序,因为我需要自己执行 Main() 方法。因此,我既没有 ApplicationDefinition 也没有应用程序资源。我目前在应用程序启动时将资源字典附加到应用程序

当然,WPF 设计器现在抱怨缺少资源。

所以我想解决两个问题: - 我不想在启动时手动附加资源字典 - 我想让资源在 WPF 设计器中的设计时也能正常工作

这个问题有什么帮助吗?

谢谢 马丁

【问题讨论】:

  • 嗯...显而易见的解决方案是使用App.xaml - 你有充分的理由不使用它吗?
  • 问题是我需要做很多事情才能启动应用程序(许可证检查、更新检查、单实例等。在启动时使用应用程序时,这会使所有事情变得更加复杂。

标签: c# wpf xaml


【解决方案1】:

有可能自己使用 Main() 方法

只需从 Application.xaml 的 xamlcode 中删除以下属性:

StartupUri="MainWindow.xaml"

然后在 Application.xaml 的代码隐藏中添加以下内容

public partial class App : Application
  {

    protected override void OnStartup(StartupEventArgs e)
    {
      // My code goes here, but nothing ever happens.

      base.OnStartup(e);
    }
  }

现在您仍然可以将 Application.xaml 用于您的资源并拥有您特定的启动过程。

【讨论】:

  • 嗨,巴斯蒂。我正在尝试您的解决方案,但是在 g.cs 代码中创建了 Main() 。我更多的是考虑一个带有属性的解决方案来摆脱 Main() 方法。
猜你喜欢
  • 2021-05-30
  • 1970-01-01
  • 1970-01-01
  • 2019-05-24
  • 1970-01-01
  • 2020-05-22
  • 1970-01-01
  • 2023-03-25
  • 1970-01-01
相关资源
最近更新 更多