C# 如何使用从类创建的内容添加功能区选项卡

C# 如何使用从类创建的内容添加功能区选项卡,c#,wpf,ribbon,C#,Wpf,Ribbon,我想我遇到了一个非常简单的问题,但是我没有办法解决它 我基本上想创建一个功能区选项卡,其中包含类中的所有内容: class RibbonTabHome { public RibbonTab RibbonTab_Container; public RibbonTabHome() { RibbonTab_Container = new RibbonTab() { Header = "Wont appear!" }; } } 然后调用该类并将选项卡添

我想我遇到了一个非常简单的问题,但是我没有办法解决它

我基本上想创建一个功能区选项卡,其中包含类中的所有内容:

class RibbonTabHome
{
    public RibbonTab RibbonTab_Container;

    public RibbonTabHome()
    {
        RibbonTab_Container = new RibbonTab() { Header = "Wont appear!" };
    }
}
然后调用该类并将选项卡添加到功能区:

public MainWindow()
{
    InitializeComponent();

    RibbonTabHome asd = new RibbonTabHome();

    RibbonMain.Items.Add(asd.RibbonTab_Container);
}
由于某些原因,只添加了选项卡容器本身,缺少标题文本

然而,这句话做得很好

RibbonMain.Items.Add(new RibbonTab() { Header = "Appearing"});
我错过了什么

致以最良好的祝愿

我错过了什么

看来你错过了很多。WPF并不是这样写的。在WPF中,我们操作数据元素,而不是UI元素。我们声明了定义数据在UI中呈现方式的
DataTemplate
s,因此要在
TabControl
中添加新的
TabItem
,可以将新的数据项添加到数据集合中,该数据集合是绑定到
TabControl
属性的
ItemsSource
数据

因此,您可以从类创建
RibbonTab
,但这些类不会手动构建UI元素,而是为控件提供数据。例如,要添加一个
按钮
,您需要一个类,该类具有两个
字符串
属性,以将数据绑定到
按钮.内容
工具提示
属性。它还需要一个
ICommand
属性来将数据绑定到实际的
命令
属性。要添加新的
按钮
,只需将这些类中的另一个添加到相关集合中即可


至于在什么样的收藏品中有什么类别,这是一个很长的故事。幸运的是,关于数据绑定
RibbonTab
控件的主题已经在网上得到了广泛的讨论,因此您将有很多很好的来源。别忘了MSDN是一个很好的资源。。。页面上有大量相关链接。

非常感谢您的评论!我现在已经研究了绑定和数据模板,并开始掌握其中的诀窍。我仍然有一个问题与数据模板。如果您能在以下网址查看我的新问题,我将不胜感激: