如何生成事件:当选择tabcontrol中的确定tabpage时,树视图控件将禁用



类似这样的东西:

private void secondTabPageInTabControl_Click(object sender, System.EventArgs e)
        {
           this.myTreeView.Enable = false; 
        } //then I chose other tabpages and it becomes enable

请改用TabControl的SelectedIndexChanged事件。它会在选择新选项卡时告诉您。使用类似的代码:

    private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) {
        this.myTreeView.Enable = tabControl1.SelectedTab != tabPage2;
    }

或者按索引,可读性较差:

    private void tabControl1_SelectedIndexChanged(object sender, EventArgs e) {
        this.myTreeView.Enable = tabControl1.SelectedIndex != 1;
    }

另一个解决方案,但请注意,如果使用太多的选项卡,这可能会变得臃肿:

    private void tabControl1_Selecting(object sender, TabControlCancelEventArgs e)
    {
        UpdateUI(e.TabPageIndex);    
    }
    public void UpdateUI(int index)
    {
        switch (index)
        { 
            case 0:
                treeView1.Enabled = true;
                break;
            case 1:
                treeView1.Enabled = false;
                break;
            case 2:
                treeView1.Enabled = false;
                break;
            default:
                treeView1.Enabled = false;
                break;
        }
    }

最新更新