gpt4 book ai didi

c# - WPF 应用程序是否需要使用 XAML?

转载 作者:太空狗 更新时间:2023-10-29 22:05:20 25 4
gpt4 key购买 nike

我想学习 C#,似乎每个人都在从使用 WinForms 转向使用 WPF。 WPF 应用程序对我来说似乎复杂得多,因为使用了用于构建表单的 .XAML 文件。

在我真正参与之前,我只是想问,XAML 文件是构建 WPF 应用程序的唯一方法吗?有更简单的方法吗?我知道我可以学习使用 WinForms,这看起来容易得多,因为您基本上有一个可以使用代码的 Form 对象,但正如我提到的,我认为最好构建 WPF 应用程序

最佳答案

如果您知道如何使用 XAML,XAML 确实会让事情变得很多更容易,因为它更具可读性和声明性,但如果您愿意,您也可以在 C# 代码中做(几乎)任何事情。

例如

<Border BorderBrush="Red">
<TextBlock Text="Lorem Ipsum"/>
</Border>

对比

var border = new Border();
border.BorderBrush = Brushes.Red;
var textBlock = new TextBlock();
textBlock.Text = "Lorem Ipsum";
// The following step is implicit in XAML via the structure
border.Child = textBlock;

虽然这可以写得更简洁和层次化:

new Border
{
BorderBrush = Brushes.Red,
Child = new TextBlock
{
Text = "Lorem Ipsum"
}
};

通常我总是推荐使用 XAML,原因包括:

  • 解析器根据 WPF 的布局系统优化树结构。
  • 不支持在代码中创建 DataTemplates。使用 FrameworkElementFactories 的构造已被弃用,取而代之的是使用 XamlParser(我绝对不建议在代码中使用 XAML 字符串)。
  • UI 和代码之间的分离。

关于c# - WPF 应用程序是否需要使用 XAML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8766330/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com