14

以下のすべてのデフォルト WPF ウィンドウでは、4 つの名前空間が参照されます。知っている:

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 )

XAML 名前空間は、d:デザイナー サポート、特に 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, Ultimate エディションのローカル マシンで見つけることができました。すべてのタイプ (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 に答える