14

在下面的每个默认 WPF 窗口中,都引用了四个命名空间。我知道:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

分别是映射库PresentationCore.dll 和PresentationFramework.dll。但是我在哪里可以找到映射命名空间的库文件

xmlns:d="http://schemas.microsoft.com/expression/blend/2008"

xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"

?

<Window x:Class="WpfApplication1.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    Title="MainWindow" Height="350" Width="525">
    <Grid>

    </Grid>
</Window>
4

3 回答 3

5

几乎正确。请在 MSDN 中查看更多详细信息:http: //msdn.microsoft.com/en-us/library/cc189061 (v=vs.95).aspx

d:http://schemas.microsoft.com/expression/blend/2008

d:XAML 命名空间旨在提供设计器支持,特别是 Microsoft Visual Studio 和 Microsoft Expression Blend 的 XAML 设计图面中的设计器支持。XAML 命名空间在d:XAML 元素上启用设计器属性。这些设计器属性仅影响 XAML 行为方式的设计方面。当 XAML 解析器在 Silverlight 运行时加载相同的 XAML 并且应用程序运行时,设计器属性将被忽略。通常,设计器属性在任何 XAML 元素上都有效,但实际上只有某些场景适合自己应用设计器属性。

mc:http://schemas.openxmlformats.org/markup-compatibility/2006

mc: 指示并支持用于读取 XAML 的标记兼容模式。通常, d: 前缀与属性相关联mc:Ignorable。如前所述,此技术使运行时 XAML 解析器能够忽略设计属性。

于 2014-11-26T01:05:15.530 回答
3

据我了解,“d”命名空间在您的代码中启用了仅设计人员的属性。这样您就可以将设计时数据等内容添加到您的应用程序中并使其可混合。

“mc”命名空间支持兼容性,通常上面提到的“d”前缀与“mc:ignorable”配对,它告诉编译器在运行时忽略设计时元素

于 2012-09-10T09:39:27.393 回答
3

我不确定这个问题是否已经得到解答,但我能够在我的本地机器上找到它,用于 Visual Studio 2013,终极版。您可以在机器上某处的程序集中找到所有类型(例如 DataContextProperty 或我正在寻找的东西,DesignInstanceExtension),其路径如下所示:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Blend\Microsoft.Expression.Platform.dll

请注意,这可能因您使用的 Visual Studio 版本而异。我只是在报告“在我的机器上工作”的内容。在机器范围内搜索“Microsoft.Expression.Platform.dll”应该可以解决问题。

于 2015-02-22T13:51:21.087 回答