2009-03-19 13 views
15

私はUserControlを作成していますが、既定のコンテンツプロパティとして動作させたいプロパティを装飾するために使用する属性の名前は覚えていません。WPF - UserControlのデフォルトのコンテンツ属性

<local:myControl Title="the title"/> 

しかし、コントロールの消費者は、このように要素の構文を使用することをお勧めします -

は、具体的な例を与えるために、私はこのようなプロパティの構文を使用して設定できる「タイトル」と呼ばれる性質を持っていると言います -

<local:myControl> the Title </local:myControl> 

私は、このサポートを有効にするとTitleプロパティに追加する必要がある属性が存在しているはずが、私はそれが何であるかを忘れてしまったとどこでもそれを見つけることができません。

誰でも私の記憶をリフレッシュできますか?また、私はItemsControlから継承しているCustomControlsを操作する同様の属性を探しています。

答えて

7

私はまた、MSDN上のコンテンツプロパティとしてコレクションをサポートするためのコードを発見しました。 TOM_Cこれはありがとうございます。

[ContentProperty("SomeObjects")] 
public class SomeContainer 
{ 


private List<SomeObject> _someObjects; 

public List<SomeObject> SomeObjects 
{ 

    get 
    { 

     if (null == _someObjects) 
     { 

      _someObjects = new List<SomeObject>(); 

     } 

     return _someObjects; 

    } 

} 

XAML: 
<SomeContainer> 

    <SomeObject/> 
    <SomeObject/> 
    <SomeObject/> 

</SomeContainer>