3

Expression Blend 4 では、シンプル スタイルは次の XML 名前空間を使用します。

http://schemas.microsoft.com/expression/interactivedesigner/2006

ブール値であるIsControlPartと呼ばれるこの名前空間の属性を頻繁に使用します。私は広範囲にグーグルで検索しましたが、この属性に関する実際のドキュメントは見つかりません。

4

1 に答える 1

2

私はそれを理解したと思います。

WPF がそのコントロールの既定のテンプレートを作成するとき、いくつかの要素にプレフィックス "PART" を付けて名前を付けます。たとえば、Slider コントロールの場合、PART_TrackPART_SelectionRangeの 2 つの部分があります。これ自体は、Expression Blend とは何の関係もありません。

これらのパーツは、コントロールの基本機能に必要です。Button のようなほとんどの単純なコントロールにはパーツがないため、制限なしで完全にカスタマイズできます。

より複雑なコントロールは、コード ビハインドが適切に機能するために存在するパーツに依存します。コントロールが存在し、正しい型である限り、コントロールがどのように見えるか、またはビジュアル ツリー内のどこにあるかは気にしません。

Expression Blend には、デフォルトで [Project] タブと [Assets] タブの横にある [Parts] ウィンドウがあります。コントロールのテンプレートを編集しているときに、そのコントロールに定義されたパーツがある場合、この [パーツ] ウィンドウに一覧表示されます。そのパーツが現在のテンプレートに存在する場合はチェック マークが表示され、存在しない場合はダブルクリックすると、Blend が要素を作成します。

d:IsControlPart 属性がどのように機能するかはまだ正確にはわかりません。独自のカスタム コントロールを作成し、IsControlPart タグを使用して要素を作成し、そのコントロールのテンプレートを作成して、パーツがリストされるかどうかを確認してみました。そうではありませんでした。したがって、これはまだ 100% 答えられていません。

于 2012-07-25T04:00:03.140 に答える