【问题标题】:WPF App.xaml in different Assembly不同程序集中的 WPF App.xaml
【发布时间】:2011-05-27 20:00:18
【问题描述】:

我想设置一个 WPF 应用程序。但我没有将应用程序的入口点用于 App.xaml 本身,而是使用项目。

第一个项目是一个 Windows 应用程序,具有正常的 Main 功能。我还有一个额外的项目(WPF 控件库),其中包含 App.xaml、窗口、控件和它所需的一切。

主方法如下启动应用程序:

[STAThread]
static void Main()
{
     Application.Run();
}

Application 是库中的一个类:

public static class Application
{
      public void Run()
      {
            App app = new App();
            app.Run();
      }
}

app 是我的 App.xaml。 App.xaml 定义了一个启动 uri MainWindow.xaml。但是,如果我运行应用程序,则该窗口永远不会显示,而是应用程序本身运行。

我无法在第一个程序集中设置 App.xaml,因为我必须支持多个窗口框架(WPF、Gtk# 等)。对如何管理这种情况有何建议?

【问题讨论】:

    标签: c# wpf app.xaml


    【解决方案1】:

    只需添加

    app.InitializeComponent();
    

    App app = new App();app.Run(); 之间。

    【讨论】:

    • 它可以工作,但它只是一种解决方法,因为我们手动设置了应用程序的主窗口(就像App.Run(new MainWindow()) 一样)。但是 App.xaml 本身仍然没有被使用。如果您将资源添加到 App.xaml 并在窗口内使用它们,您可以试试这个。
    • 是的,我刚刚编辑了帖子:app.MainWindow = ... 确实是一个简单的解决方法
    • InitializeComponent 从 xaml 加载所有内容
    猜你喜欢
    • 1970-01-01
    • 2016-12-12
    • 2010-10-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多