【发布时间】:2010-10-04 17:16:17
【问题描述】:
我的任务是尽快了解 WPF,至少在基本层面上。我正在阅读WPF 4 Unleashed 一书。本书的第一部分将介绍 XAML。
我的问题是:
人们真的使用纯 XAML(手动创建 XAML 代码)来设计他们的表单吗?我唯一能想到的可能比这种方法更乏味的是在汇编程序中编写表单。
Expression Blend 之类的工具是否旨在让您以传统的拖放方式开发 WPF 表单,然后为您创建 XAML?
非常感谢。
【问题讨论】:
我的任务是尽快了解 WPF,至少在基本层面上。我正在阅读WPF 4 Unleashed 一书。本书的第一部分将介绍 XAML。
我的问题是:
人们真的使用纯 XAML(手动创建 XAML 代码)来设计他们的表单吗?我唯一能想到的可能比这种方法更乏味的是在汇编程序中编写表单。
Expression Blend 之类的工具是否旨在让您以传统的拖放方式开发 WPF 表单,然后为您创建 XAML?
非常感谢。
【问题讨论】:
人们真的使用纯 XAML(手动创建 XAML 代码)来设计他们的表单吗?
是的,很多人都这样做。设计人员越来越受欢迎,但了解生成的 XAML 非常有用。这里的技巧不是用 Windows 窗体的术语来思考 - 如果你查看 Windows 窗体生成的代码,它需要很多代码来做一些非常简单的事情 - 看看需要多少行代码来放置和连接一个按钮,例如。在 WPF 中,您可以使用单个 XAML 元素执行此操作,并且在执行过程中具有更大的灵活性。
我唯一能想到的可能比这种方法更乏味的就是用汇编程序编写表单。
其实我不同意。 XAML 需要一些时间来适应,但它具有很强的描述性,因此您可以在很短的时间内制作出非常实用的 UI。
Expression Blend 之类的工具是否旨在让您以传统的拖放方式开发 WPF 表单,然后为您创建 XAML?
是的。 Visual Studio 2010 设计器在简单的情况下做得很好——但是,Blend 的功能要丰富得多。它在进行更精细的样式设计时尤其出色 - 一旦加快速度,您会发现您可以在 Blend 中以您在 Windows 窗体中从未想象过的方式自定义 UI,非常快速和轻松。
【讨论】:
人们真的使用纯 XAML(手动创建 XAML 代码)来设计他们的表单吗?
几乎总是如此。我还没有在VS2010中使用过表单设计器,而且我在Expression Blend中还不够流利,使用Blend比手动编辑XAML更快。我在 Kaxaml 中进行大部分布局原型设计。
一旦我获得了或多或少实用的布局,我将转到 Blend 以使其看起来更好。我还使用 Blend 来编辑控件模板。
但我总是查看 XAML,即使在 Blend 中也是如此。 (我花了很多时间修复 Blend 生成的 XAML - Blend 通过设置边距来定位元素的倾向是一个问题。)如果我不理解 XAML,我就不理解我的代码。
我唯一能想到的可能比这种方法更乏味的就是用汇编程序编写表单。
没必要走那么远;尝试用 C# 编写它们。
一旦您精通 XAML,通过编辑标记来开发 UI 元素比使用可能会或可能不会生成您想要的 XAML 的工具来远快。到达那里需要一段时间,但我永远不会回去。
【讨论】: