如何在停靠和取消停靠时更改DevExpress DockPanel TabText

时间:2012-08-26 09:17:38

标签: winforms devexpress

虽然停靠和取消停靠..我在“TabText”中遇到问题我有5个面板,而停靠在左边我想显示它的名字并从中取消停止。它将转到表格底部...

我的问题是,当它转到底部时我将TabText设置为" " ..但是当所有标签都停靠在底部,只有一秒钟的名字显示在其中......我使用VisibilityChangedEventArgs个事件将TabText设置为" "

我需要一个解决方案,即当对接到底部名称时,即使只有一秒钟也不会显示

1 个答案:

答案 0 :(得分:0)

我解决了这个问题..这是可以在DevExpress Dock面板的VisibilityChangedEventArgs之前调用的代码

         protected override void UpdateRootPanels()
    {
        DockWindow objWindow = null;
        base.UpdateRootPanels();
        try
        {
            this.BeginUpdate();
            if (this.ActivePanel != null && this.ActivePanel.Count > 0)
            {
                for (int iCount = 0; iCount < this.ActivePanel.Count; iCount++)
                {
                    if (ActivePanel[iCount].Visibility == DockVisibility.Visible)
                    {
                        objWindow = GetDockWindowByName(ActivePanel[iCount].Name);
                        if ((objWindow.DockState == DockWindowDockStateConstants.Collapsed && this.PanelActivationList[1].Dock == DockingStyle.Fill)
                            || (objWindow.DockState == DockWindowDockStateConstants.Collapsed && this.PanelActivationList[1].Dock == DockingStyle.Right))
                        {
                            this.ActivePanel[iCount].TabText = " ";
                        }
                        //.Invoke((MethodInvoker)delegate { this.ActivePanel[iCount].TabText = " "; }, null);
                    }
                }
            }
        }
        finally
        {
            this.EndUpdate();
        }
    }