DevExpress问题积累:DocumentManager问题

DevExpress 版本:14.2

目的:创建可拖拽的控件浏览视图

过程:

1、创建DocumentManager控件:DevExpress.XtraBars.Docking2010.DocumentManager DmUvw;

2、创建在DocumentManager控件中加入WidgetView:DevExpress.XtraBars.Docking2010.Views.Widget.WidgetView widgetView1;

3、通过代码动态添加Document

        /// <summary>
        /// 添加Document
        /// </summary>
        /// <param name="doName"></param>
        public void AddDocument(string doName)
        {
            Document bd = new Document();
            bd.Caption = doName;
            DmUvw.View.Documents.Add(bd);
        }

事件:其中UcTemp是自定义控件

       DmUvw.View.QueryControl += View_QueryControl;

        private void View_QueryControl(object sender, QueryControlEventArgs e)
        {
            string tempVmeName = e.Document.Caption;
            UcTemp ucTemp = new UcTemp(tempVmeName);
            e.Control = ucTemp;
        }

4、通过代码删除Document

        /// <summary>
        /// 删除Document
        /// </summary>
        /// <param name="doName"></param>
        public void DeleteDocument(string doName)
        {
            foreach (BaseDocument bd in DmUvw.View.Documents)
            {
                if (bd.Caption == doName)
                {
                    DmUvw.View.Documents.Remove(bd);
                    return;
                }
            }
        }

问题:通过代码删除Document经常出现问题,删除之后界面未刷新,例如加载5个Document。逐一进行删除,偶尔出现一、两个Document实际已删除,但界面显示未删除的问题。

解决办法:多次试验,最终偶发发现解决办法。

1、在widgetView1中增加StackGroup:DevExpress.XtraBars.Docking2010.Views.Widget.StackGroup stackGroup1;

2、增加时将每个Document放入stackGroup1。

        /// <summary>
        /// 添加Document
        /// </summary>
        /// <param name="doName"></param>
        public void AddDocument(string doName)
        {
            Document bd = new Document();
            bd.Caption = doName;
            DmUvw.View.Documents.Add(bd);
            stackGroup1.Items.Add(bd);
        }
时间: 2024-10-19 18:37:32

DevExpress问题积累:DocumentManager问题的相关文章

一些DevExpress控件概况!!!!主要DocumentManager.WindowsUIView.Tile

WinForms Controls The links below provide comprehensive information on using DevExpress WinForms products. They contain a detailed description of the products API and also provide many examples with step-by-step instructions, screenshot images and so

踩坑(Running)填坑(ZSSURE):DevExpress的XtraTabControl、Telerik的OpenAccessContext以及StarUML

题记: 今天好友在朋友圈分享了一篇有深度的好文"请鼓励你的孩子做个幸福普通人",文章略显长,细细品读下来感触颇多.加之最近天天看着小外甥大睿睿的一步步的成长,已渐渐远离年轻稚嫩.走向成熟稳重的我对学习有了新的认识,回想起自己的成长过程,经验和技能并非是父母手把手教导的,反而是他们给我营造的"自由.开放.甚至略显放纵"的环境.他们以身作则的行动,让我从中体会.感悟出了所有的点点滴滴. 说到现在从事的软件研发工作,想想同学中毕业鲜有留下来做技术的(姑且认为IT民工也属于

DevExpress控件学习总结

1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上.这个控 件维护工具条在窗体上的布局,处理用户的行为(processes an end-user's actions),提供一些定制功能等等.这个控件维护 工具条.工具条项

在DevExpress程序中使用内置的图标构建美观的界面元素

在我们一般的程序中,为一般的界面元素添加一定的图标展示,有助于提升界面的整体的美观.结合排版布局,以及固定场景的图标,往往给用户非常好的直观感受:统一.美观.易理解.因此在一般的程序界面中,都尽量在略显单调的界面增加一些图标进行点缀,能够达到较好的整体效果.本文介绍在Winform程序界面中,可以使用自己的图标库,也可以引入DevExpress程序中使用内置的图标,从而实现给开发的程序润色. 1.使用自己的图标库 不管在Web还是在WInform项目里面,开发者积累一定的图标库,包括256,12

DevExpress v15.1:WinForms控件功能升级(二)

<免费下载DevExpress Winforms Controls v15.1.4> WinForms Adorner UI管理器 新的WinForms Adorner UI管理器是一个绘制在其他所有UI元素顶端的透明层.它旨在显示对象和视觉效果,为最终用户呈现更好的应用程序状态.您可以用它来绘制badges.突出显示重点UI元素.当验证数据编辑器时显示视觉效果等等. 支持Right-To-Left 在此版本中,我们为以下所有的DevExpress WinForms控件引入了对Right-To

DevExpress控件学习总结(转)

DevExpress控件学习总结 1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上.这个控件维护工具条在窗体上的布局,处理用户的行为(processes an end-user's actions),提供一些定制功能等等.

使用DevExpress改变WinForm皮肤(VS)

基于步入DevExpress的使用(VS),进一步使用DevExpress改变WinForm皮肤,适合初学者. 提示: 1.对于DevExpress菜单中的RepositoryItemComboBox没有EditValue属性,无法直接获取选择的值,但可以在其事件中将其转化为ComboBoxEdit控件来获取.如下: private void repositoryItemComboBox1_SelectedValueChanged(object sender, EventArgs e) { Co

DevExpress控件学习总结(转)

1.Navigation & Layout 1.1 Bar Manager 如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上.这个控 件维护工具条在窗体上的布局,处理用户的行为(processes an end-user's actions),提供一些定制功能等等.这个控件维护 工具条.工具条项

DevExpress控件学习总结【转载】

1.Navigation & Layout 1.1 Bar Manager      如果想在窗体或用户控件(user control)上添加工具条(bars)或弹出菜单(popup menus),我们 需要把一个不可见的控件(component)BarManager(Navigation&Layout)拖放到这个窗体或用户控件上.这个控 件维护工具条在窗体上的布局,处理用户的行为(processes an end-user's actions),提供一些定制功能等等.这个控件维护 工具条