WPF:向UserControl提供子控件列表

时间:2015-09-04 07:36:25

标签: wpf xaml user-controls

我想做(用于测试和教育目的)一个巫师。

最后,我希望能够像这样定义:

<Window ...>
    <Wizard>
        <WizardStep>
        ...
        </WizardStep>
        <WizardStep>
        ...
        </WizardStep>
        <WizardStep>
        ...
        </WizardStep>
    </wizard>
</Window>

我不需要换肤或其他东西,所以UserControl对我来说没问题。

目前我在Wizard课上苦苦挣扎,如何让它允许一个子控件列表,以及如何在UserControl

中使用它们?

1 个答案:

答案 0 :(得分:0)

Wizard的实施中,使用ContentPropertyAttribute指定应存储WizardStep集合的属性。

来自MSDN:

  

ContentPropertyAttribute类

     

指示类型的哪个属性是XAML内容属性。一个   处理XAML子级时,XAML处理器使用此信息   属性类型的XAML表示的元素。

[ContentProperty("Title")]
public class Film
{
    public Film()
    {
    }

    public string Title
    {
        get { return _title; }
        set { _title = value; }
    }

    private string _title;
}

注意

  

为了接受多个对象元素作为内容,   XAML内容属性的类型必须是可支持的集合   类型。