XAML中的#region

时间:2010-05-22 13:59:40

标签: wpf visual-studio xaml

我实际上不喜欢我的代码中的#region。 BUT 由于某种原因让我发疯,我想把它们放在我的XAML中。我希望整个部分都有#region-like的东西并将它们折叠起来(例如我的< Window.CommandBindings>,< Grid。* Definitions>,< Menu>,< Toolbar>等等。

这是否存在?如果没有,< RegionCollapse>

怎么样?

8 个答案:

答案 0 :(得分:83)

OP注意:this was the original right answer并且在某些方面仍然是一个好的,包括我在内的最佳答案。但这最能解答原始问题。

Visual Studio 2015最终在XAML中添加了对区域的支持。您将区域代码包含在内:

<!--#region RegionName-->

All Your XAML In Here

<!--#endregion-->

这将在起始行的左侧添加一个折叠图标,您可以使用该图标展开/折叠该区域。

由于我们已经可以在XAML编辑器中折叠/展开任何节点,所以不知道这实际上有多么方便。无论如何,如果您想使用它,那就在那里。

答案 1 :(得分:52)

答案 2 :(得分:21)

我可能会忽略您的请求,但XAML编辑器会自动将可折叠区域放在元素周围。请注意编辑器窗口左栏中的节点。单击“ - ”,关联的元素将折叠为单行,非常类似于#region。

答案 3 :(得分:8)

不,但根据微软的this reply

  

这是一个很好的建议。非常感谢。我们将考虑将来发布

答案 4 :(得分:4)

仅供参考:此版本已更新,可与VS 2012配合使用 http://visualstudiogallery.msdn.microsoft.com/3c534623-bb05-417f-afc0-c9e26bf0e177

这个VS2012扩展程序可以很好地美化XAML,因此属性可以自动排序和对齐等。 http://xamlstyler.codeplex.com/documentation

答案 5 :(得分:4)

在Visual Studio 2012 Update 4中,我能够选择一大部分XAML代码,右键单击并选择“隐藏选择”。 (基本上用[...]符号折叠该部分,并且在扩展之后,系统“记住”我想要使用行号旁边的[ - ]符号折叠该部分。

答案 6 :(得分:1)

您可以使用SSI格式向XAML文件添加注释:

<!-- Grid Styles -->
<style...>
<style...>

<!-- Window Styles -->
<style...>
<style...>
<style...>

如果您使用内置的XML折叠,这至少会为您提供某种“标题”。

答案 7 :(得分:1)

是,

VS2010会记住崩溃的区域,但请注意,当我应用SP1时,这已停止工作(与其他很多事情一样)。在卸载VS2010(和任何扩展)并执行以下安装过程后,崩溃的XAML元素似乎记得很好:

  • 安装VS2010(在我的情况下为Pro)
  • 安装VS2010 Windows更新(包括XML编辑器,200MB +)
  • 安装SP1安装
  • 安装VS2010 SP1 Windows更新

可以帮助别人。