And*_*ndy 3 c# wpf visual-studio-2008
我对整个C#/ WPF事物都很新.我对WPF分层的概念有一个很好的理解,它是一个非常好的工具.然而,我遇到的是VS等等试图让底层的代码完全不干涉.
在VS C#Express 2008中启动一个全新的WPF应用程序时,有两个立即可见的源文件:App.xaml和Window1.xaml.这一切都很好,花花公子,但我认为事情开始的唯一重要地方就是App.xaml那条线
<Application x:Class="SomeName.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="Window1.xaml">
Run Code Online (Sandbox Code Playgroud)
查看类名SomeName.App,我猜测扩展Application意味着从哪里开始,但应用程序实际上是如何知道的?
我对Java非常熟悉,所以如果它能让事情更容易解释,请这样做.我喜欢尽可能低级地理解事物(没有进入机器代码),所以请帮助我深入了解C#和WPF的内部工作原理.
一如既往,感谢StackOverflow社区的任何帮助.:)
您可能需要理解的概念是工具链从XAML文件生成代码,这会为声明性XAML提供"类似代码"的行为.
但是WPF非常复杂并且与其他任何东西都不太相似,而且一本书可能很有用 - 我个人认为Adam Nathan WPF书非常出色,并且将比互联网,IMO更好地涵盖这种"对概念的一般理解".
生成的应用程序文件可能会被称为app.g.cs,并且将位于其中一个中间文件目录中 - 查看实际的启动代码 - 除此之外,您还可以找到以下内容:
public static void Main() {
MyAppName.App app = new MyAppName.App();
app.InitializeComponent();
app.Run();
}
Run Code Online (Sandbox Code Playgroud)
在这一点上它可能开始变得更有意义.
实际上,如果您不喜欢声明性路由,则可以自己编写所有启动代码.
| 归档时间: |
|
| 查看次数: |
1875 次 |
| 最近记录: |