WPF - 关闭 App.g.cs 中 Main 的自动生成
我正在学习WPF。
我想在 App.xaml.cs 中提供我自己的 Main 方法,而不是在 App.g.cs 中为我生成一个方法。 然而,我不断遇到冲突,因为我还没有找到如何阻止生成额外的 Main 。
我的项目文件或其他地方是否有控制此设置的设置?
I'm learning WPF.
I want to provide my own Main method in my App.xaml.cs rather than getting one generated for me in App.g.cs. However I keep getting conflicts because I haven't found out how to stop an additional Main from being generated.
Is there a setting in my project file or elsewhere that controls this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
我在这里找到了答案。
是:
然而,在上述博客的评论中,有一条评论指出混合可能存在问题,它引用了:http://blogs.msdn.com/expression/archive/2008/04/09/creating-a- wpf-blend-project-that-loads-resources-in-code.aspx 。 我还没有完全理解这些问题。
I found the answer here. http://learnwpf.com/post/2007/12/13/How-can-I-provide-my-own-Main%28%29-method-in-my-WPF-application.aspx
It is:
However in the comments to the above blog, a comment notes there may be issues with blend and it references: http://blogs.msdn.com/expression/archive/2008/04/09/creating-a-wpf-blend-project-that-loads-resources-in-code.aspx . I don't fully understand the issues yet.
您还可以创建一个单独的类(例如,
Entry
)来负责引导您的应用程序。 然后转到项目设置并将启动对象设置为Entry
。 这样您甚至不必禁用自动生成的方法。You can also just create a separate class (for example,
Entry
) which is responsible for bootstrapping your application. Then go to project settings and set your startup object toEntry
. That way you don't even have to disable the autogenerated method.最简单的方法是在“属性”窗口中将“生成操作”从“ApplicationDefinition”设置为“App.Xaml 的页面”。
然后您可以定义自己的入口点。
The easiest way is to set the Build Action in the Properties window from ApplicationDefinition to Page for App.Xaml.
Then you can define your own entry point.
一种方法是放弃在 XAML 中定义应用程序派生类,因此您可以根据自定义要求手动定义 Main 方法
One way is to forgo defining an Application-derived class in XAML, so you can manually define the Main method with your custom requirement
我找到了一个解决方案:
I found a solution:
最简单的方法就是创建一个像 Startup.cs 这样的类,并使用构建操作进行编译
并从 App.xaml 中删除 ApplicationDefinition 将其转换为页面
并将其从应用程序中的任何其他文件中删除
The Easy way just create a class like Startup.cs with build action to compile
and remove ApplicationDefinition from App.xaml convert that to page
and remove it from any other file in the application