是否有人知道如何以编程方式在.NET Framework设置所选PropertyTab的一个PropertyGrid的?该SelectedTab属性是不可设置的,这是可以理解的,因为该文件表明你不应该创建自己PropertyTabs的实例。然而,我似乎无法找到相应的方法来调用,也不属性对PropertyGrid的实例设置,以改变从代码的标签,例如SelectTab(类型tabType)/ INT SelectedTabIndex {集; }。任何想法?

有帮助吗?

解决方案

海报丹尼尔几乎拥有了。下面是实际工作,如果你是这个应用到自己的PropertyGrid的子类:

    public int SelectedTabIndex 
    {
        set
        {
            Type pgType = typeof(PropertyGrid);
            BindingFlags flags = BindingFlags.NonPublic | BindingFlags.Instance;

            ToolStripButton[] buttons = (ToolStripButton[]) pgType.GetField("viewTabButtons", flags).GetValue(this);
            pgType.GetMethod("SelectViewTabButton", flags).Invoke(this, new object[] { buttons[value], true });
        }
    }

像丹尼尔说,这是不好的形式完全不被支持,但你不必担心跨域访问权限,它只要工作。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top