WPF Blend工具与用于界面控件的手工编码XAML

时间:2011-07-27 13:41:14

标签: wpf xaml expression-blend blend

嗨,这可能看起来像一个愚蠢的问题,但我正在寻找一些反馈。我是设计师,在WPF应用程序上与开发团队合作。我们安装了Expression Blend 4.我是WPF / Silverlight的新手,但我已经跳了进去,我觉得它很棒。

但是,我注意到使用Expression Blend时可以生成的xaml代码有时会过于讨厌。例如,我为带有Blend的按钮创建了一个控件模板,标记就像100行代码。然后我创建了自己的控件模板,只有20行左右,它完全相同。我为listview做了同样的事情,哇,为ListView模板生成的代码量非常多。再次,我创建了自己的样式和模板,结果是少了很少的xaml代码。

我们正在创建的应用程序将会非常大我想,所以我的问题是,如果我只是使用混合GUI创建所有设计/界面元素,即使生成了,那么它是否会成为关注性能的问题代码可以更广泛?我可以看到使用Blend工具进行设计可以使事情变得更容易,但就像设计网站时一样,我从未在Dreamweaver中使用过设计视图,因为生成的代码是纯粹的废话。

非常感谢任何见解。

非常感谢

2 个答案:

答案 0 :(得分:1)

我个人只会使用任何设计师来绘制和实时显示我手写代码的可视化表示。生成的代码可能并不可怕,但是一旦你需要手动执行某些操作,如果你没有自己编写代码,就很难找到所需的一切。另外Blend切片很多东西(创建资源和引用它),而我喜欢将东西嵌套到位,如果它们只使用一次(我不知道代码生成器是否可以在这方面进行调整)。

如果您只是复制使用的默认模板,那么模板很大就不应该是一个很好的问题,它们本身就非常庞大而且并不是真正的问题。

答案 1 :(得分:1)

我猜你为按钮生成的控件模板实际上并没有与你在Blend中复制的默认控件模板完全相同。你可能认为它确实如此,但我猜它丢失了一些东西。例如,您的模板是否处理按钮使用的all 9 visual states?如果你只有20行XAML,可能不是。是的,ListView控件模板非常大,因为它是一个非常复杂的控件。

一般来说,我不担心生成大型控件模板。它会发生。一般来说,运行时处理得非常好。与Dreamweaver不同,Blend通常会为您提供相当不错的代码。如果您通过做一些不明智的事情(例如在Visual Studio中将构建操作设置为嵌入式资源)而滥用资源字典,则性能只会成为问题。 (我相信这会创建一个松散的XAML文件,必须在运行时而不是编译时解析和编译。)

保持理智的关键是组织。就像网站一样,您需要针对如何存储控件模板提出组织方案。