我正在学习WPF。

我想在 App.xaml.cs 中提供我自己的 Main 方法,而不是在 App.g.cs 中为我生成一个方法。然而,我不断遇到冲突,因为我还没有找到如何阻止生成额外的 Main 。

我的项目文件或其他地方是否有控制此设置的设置?

有帮助吗?

解决方案

我在这里找到了答案。 http://learnwpf.com/post/2007/12/13/How-can-I-provide-my-own-Main%28%29-method-in-my-WPF-application.aspx

这是:

WPF 知道为特定 xaml 文件创建 Main() 方法的方式是通过为 App.xaml 设置的构建操作属性 - 它具有 ApplicationDefinition 的构建操作。通过将此更改为 Page,WPF 将不会创建 Main 方法,您可以在添加到项目的常规类文件中提供您自己的方法。

然而,在上述博客的评论中,有一条评论指出混合可能存在问题,它引用了: http://blogs.msdn.com/expression/archive/2008/04/09/creating-a-wpf-blend-project-that-loads-resources-in-code.aspx 。我还没有完全理解这些问题。

其他提示

您也可以只创建一个单独的类(例如,Entry),这是负责引导你的应用程序。然后去项目设置和你的启动对象设置为Entry。这样,你甚至不必禁用自动生成的方法。

的最简单的方法是在从ApplicationDefinition属性窗口中生成操作设置为页面的App.xaml。

然后你可以定义自己的切入点。

我找到一个解决方案:

  1. 复制数据自己的程序。xaml文件
  2. 删除的应用程序。xaml文件并重建有相同的名称
  3. 创建`主要`的方法。cs文件,并粘贴到你的旧代码复制到它

的一种方式是放弃限定XAML应用程序的派生类,这样就可以手动与自定义要求限定Main方法

最简单的方式只是创建一个像Startup.cs一类具有生成操作编译 从App.xaml中删除ApplicationDefinition将其转换成网页 和从任何其他文件中的应用程序中删除它

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top