如何:停止添加mc的Visual Studio XAML编辑器:可忽略

时间:2012-02-24 05:38:56

标签: visual-studio-2010 xaml-designer

每当我在XAML页面打开时运行Windows Phone应用程序时,Visual Studio会将以下内容添加到我的XAML中:

mc:Ignorable="d" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"   
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
d:DesignHeight="768" 
d:DesignWidth="480"

如何阻止它这样做?我知道保留它不会伤害我,但我不想在我的代码中使用它,除非我需要它。

由于

2 个答案:

答案 0 :(得分:2)

创建任何类型的预定义文档时,Visual Studio使用内置的默认模板。

例如,对于WPF UserControl的Visual Studio 2010自定义模板,请执行以下操作:

<UserControl x:Class="$rootnamespace$.$safeitemname$"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             mc:Ignorable="d"
             d:DesignHeight="300" d:DesignWidth="300">
    <Grid>

    </Grid>
</UserControl>

我电脑上的文件位置: C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \ WPF \ 1033 \ WPFUserControl.zip \ UserControl1.xaml < / p>

因此,您可以看到Microsoft Team默认决定包含此命名空间。我相信您也可以在Windows Phone项目中找到这样的模板,只需在Visual Studio安装文件夹下查看,显然您始终可以为任何类型的文档创建和使用自己的模板。

我发现最整洁 - 你不需要重新启动Visual Studio来获取你所做的模板更新。我刚刚从默认demplate中删除mc:Ignorable并试图创建一个新的UserControl - 它是使用刚更新的模板文件创建的,因此Visual Studio 2010即时获取更改,这很好,归功于Microsoft Team。


看起来所有可用模板都按照此文件夹下的每个技术/框架进行分组:

“C:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \”

答案 1 :(得分:0)

我找不到阻止Visual Studio XAML编辑器将mc:Ignorable添加到给定XAML页面的配置选项或注册表。

可以阻止Visual Studio添加它的方法包括:

  • 在运行应用程序之前手动关闭XAML页面
  • 通过扩展Visual Studio(资源here)或使用宏(从Visual Studio 11及以后删除宏),在运行应用程序之前自动关闭XAML页面
  • 将用于编辑XAML的编辑器设置为仅使用XAML编辑器内的常规文本编辑器。 (资源herehere
  • 通过让您的应用程序或后期构建步骤编辑XAML文件来删除添加的XAML。 部分代码段为here。如果采用应用程序方法,则需要编辑该文件,然后重新加载相关控件。有关构建后事件的信息可在How to: Specify Build Events (C#)Gotcha! Visual Studio Pre/Post-Build Events使用批处理文件。

无论您是否需要,取决于您的使用案例,您是否需要为Visual Studio设计师指定的设计时间宽度和高度,这是您的决定。 有关详细信息,请参阅mc:Ignorable Attribute了解属性本身以及以下Stackoverflow post,了解有关d:DesignWidthd:DesignHeight的更多信息。