c#用TabControl填充树视图

本文关键字:视图 填充 TabControl | 更新日期: 2023-09-27 18:02:52

所以我已经能够在WPF/XAML绑定中填充一个带有标签名的TreeView,但在c# Windows窗体中还没有这样做过。

我想有树视图显示项目名称基于什么文件是打开的,然后在它下面的tabcontrol名称(这些是静态的-一个被称为编辑器和其他字段)。

稍后我将添加一个上下文菜单,但唯一的目的是使选项卡根据它们的状态和来自树视图的单击事件可见。

我的问题是我不知道如何在treeview中关联它们。我找到了这个代码,有人能告诉我我是否在正确的轨道上吗?

private void treeView1_AfterSelect(Object sender, TreeViewEventArgs e)
    {
        // Set the visibility of the tabpages from the treeview 
        if ((e.Action == TreeViewAction.ByMouse))
        {
            if (e.Node.Name == "Editor")
            {
                this.editForm.tabControl1.SelectedTab = editForm.Editor;
            }
            if (e.Node.Name == "Fields")
            {
                this.editForm.tabControl1.SelectedTab = editForm.Fields;
            }
        }
    }

c#用TabControl填充树视图

您可以使用TreeNodes的Tag属性来保存相关的选项卡名称。

if (e.Action == TreeViewAction.ByMouse)
{
    TabPage p = tabControl1.TabPages[e.Node.Tag]
    tabControl1.SelectedTab = p;
}