Silverlight ContentProperty на абстрактной панели классов - PullRequest
0 голосов
/ 24 августа 2010

Вот иерархия моего класса MyContainer.Обратите внимание, что Panel имеет Children, а также MyContainer.Могу ли я по-прежнему использовать Children из Panel?

Что означает [ContentProperty("Children", true)]?В сводке поясняется:

Указывает, какое свойство класса можно интерпретировать как свойство содержимого при анализе класса процессором XAML.

Но я непонимая, что он имеет в виду?

[ContentProperty("Children", true)]
public abstract class Panel : FrameworkElement
{
    //
    // Summary:
    //     Gets the collection of child elements of the panel.
    //
    // Returns:
    //     The collection of child objects. The default is an empty collection.
    public UIElementCollection Children { get; }
}

public class Canvas : Panel
{....}

public class MyContainer : Canvas
{

    public MyContainer();

    public ObservableCollection<MyObject> Children {get;}
}

1 Ответ

1 голос
/ 24 августа 2010

Атрибут ContentProperty означает, что следующие два элемента эквивалентны - свойство Children Canvas является содержимым Canvas по умолчанию.

<Canvas>
    <TextBlock Text="Hello"/>
    <Button Content="World"/>
</Canvas>

<Canvas>
    <Canvas.Children>
        <TextBlock Text="Hello"/>
        <Button Content="World"/>
    </Canvas.Children>
</Canvas>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...