【问题标题】:Best way for programmers to edit XAML程序员编辑 XAML 的最佳方式
【发布时间】:2011-02-04 06:44:00
【问题描述】:

我想知道程序员如何选择编辑 XAML。与我交谈过的大多数程序员似乎都在编辑原始 XML,但这对我来说似乎很疯狂,因为对于更可视化的编辑器来说这是一件很自然的事情(当然,您通常最终必须着手处理原始代码,但不是是否有更好的方法来布置网格、编辑模板、添加非 c# 触发器或管理命令?真正让我失望的是编辑菜单——Visual Studio 1.0 的 C++ 菜单编辑器比原始 XAML 编辑体验。)

当我编辑 .aspx 文件时,我大部分时间都使用可视化编辑器,然后对于原始内容,我会进入 html 代码。

我知道 Expression Blend,但它似乎更关注艺术类型和 GUI 专家,而不是程序员。

有没有人推荐一个比 VS 更好的 XAML 编辑器?尤其是因为 VS 在 XAML 编辑方面似乎也存在真正令人讨厌的问题,比如错误和性能不佳?

感谢您帮助这个 XAML 新手。

【问题讨论】:

  • 你用过哪个版本的 Visual Studio?你用的是VS2010吗?对 XAML 编辑有很大改进。
  • 两者,VS2010 更好,但几乎没有光年好。也就是说,它的错误更少,速度也更慢,但是,例如,我仍然需要输入原始代码来制作菜单,而不是使用视觉设计器。对我来说,这有点像输入 .rc 文件而不是使用图形设计器。
  • VS2010 允许您通过集合编辑器在 GUI 中编辑菜单。选择菜单并单击“属性”窗口中的“项目”按钮。我承认,视觉上不像一个合适的设计师,但仍然比编辑原始 XAML 更合理

标签: wpf visual-studio silverlight xaml


【解决方案1】:

我必须同意 Blend 拥有我尝试过的最好的 XAML 编辑器。虽然 VS2010 比 2008 年有了一些显着的改进,但它与 Blend 不在一个水平上,而且感觉还是有点笨拙,容易吓坏。

进行快速而肮脏的 XAML 编辑的一个不错的选择是 Kaxaml,这是一个可以被视为 XAML 记事本的小型编辑器。它速度快(比 VS 好),具有语法高亮、自动完成和编辑器内预览。我发现它与 VS 一起使用非常有用,尽管它仅限于严肃的工作。

【讨论】:

    【解决方案2】:

    如您所见,用于 XAML 的 Visual Studio 2008 可视化编辑器仍然相当原始。当谈到想要一个真正的 XAML 文件可视化编辑器时,Blend 是您最好的选择。

    和你一样,我最初认为 Blend 更多地是针对设计师的,但在使用了一段时间后,我发现 Blend 显然是可视化编辑 XAML 文件的最佳工具。由于 Blend 与 Visual Studio Team System 集成,您可以在 Visual Studio 和 Blend 之间无缝切换。

    【讨论】:

      【解决方案3】:

      我在进行视觉调整或设置故事板时使用 Blend。我有时也会在第一次布置窗口时使用它,但我发现手动编写 XAML 代码通常比依靠 Blend 来猜测我想要的布局更容易。我在手动进行 XAML 编辑时使用 Visual Studio,因为它具有比 Blend 更好的 Intellisense 和自动格式化。我从不在 VS 中使用 WPF 的可视化编辑器。

      这里的部分挑战是 XAML 布局比 WinForms 复杂得多,因此简单的拖放不再完全消除它。 Blend 可以很好地猜测我想要什么,但如果我真的想弄清楚应该如何布置视觉效果,输入 XAML 会更容易表达,因为我已经熟悉了。

      我的典型工作流程:

      1. 通过在 Visual Studio 中为 Grids、StackPanels、DockPanels 以及您将布置窗口或控件的内容输入 XAML,创建初始布局。如果布局很简单,我也可以加入其他一些控件。

      2. 打开 Blend 并使用它来放置较小的控件、编辑控件属性并创建/关联我需要的任何样式。如果我需要自定义控件或数据模板,我将从 Blend 创建它们,然后在这些模板上重复 VS/Blend 过程。

      3. 返回 VS 并编辑 XAML 以设置我的设计器数据上下文并手动编码数据绑定。

      4. 使用 Blend 使用设计器数据上下文验证完成的窗口或控件的外观,并根据需要调整和设置样式以完善 UI。

      我经常来回走动,但我通常也会从不同的心态使用每种工具来处理它。如果我在一家更大的公司工作,我怀疑我在 Blend 中所做的大部分工作都会由图形设计师处理,我认为这是我的意图。不过,我不介意同时使用这两种工具,而且我已经习惯了根据需要使用这两种工具。

      【讨论】:

        【解决方案4】:

        Visual Studio 2008 不是编辑 WPF 窗口的工具。如果您使用复杂的 xaml 类型或一些高级样式,通常会出错。

        Visual Studio 2010 在编辑和特别设计器中添加了许多新功能,用于绑定和 IntelliSense for xaml。

        Blend 确实是面向微软这样的设计师想要出售的,但我发现它更像是 VS 设计师所缺少的功能。 Blend 有一个用于样式和动画的高级编辑器,对生成有很大帮助。 但是 Blend 在编辑原始 XAML 方面非常缺乏,它根本没有 IntelliSense。

        我的选择是同时使用 VS 2010 和 Blend 专门用于样式和动画。

        【讨论】:

          【解决方案5】:

          Expression Builder 是一款不错的免费工具

          【讨论】:

            猜你喜欢
            • 2010-11-08
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2020-10-30
            • 1970-01-01
            • 2011-06-11
            • 2016-09-22
            • 1970-01-01
            相关资源
            最近更新 更多