使用的是DevExpress的dockManager控件,新增一个DockPanel,在DockPanel中添加一个AxMapControl控件并设置默认加载地图。

实现效果图如下:

但是存在一个问题,那就是在DockPanel默认加载时候如果使用的是AutoHide状态,在鼠标放在左侧标签时候(只是鼠标放在上面而没有点击),会自动弹出显示该DockPanel,但是该DockPanel中的地图控件显示异常。

效果如下图所示:

(正常情况下应该与上图完全相同)

似乎是刷新不完全,只有DockPanel的右侧一点地方的内容显示出来了,其他的内容呢?(如果是点击显示或者DockPanel在默认加载时不是AutoHide状态,均不会出现这种情况)

本来以为在DockPanel完全显示处理进行一下AxMapControl的刷新即可,但是找不到DockPanel相应的事件(大部分事件像是Resize等在窗体大小刚改变的时候就触发了,而不是显示完全后才触发)。

最终在无奈的情况下初步做了几种处理方法,但是都存在一定的问题。

1、在加载的时候使DockPanel为DockVisibility.Visible状态,禁用AutoHide状态(选择该DockPanel设置其ShowAutoHideButton为False即可)。

2、设置DockManager的AutoHideSpeed尽量高一些(我设置为50),这样也可以避免此种情况的发生,但是没有那种慢慢弹出DockPanel的效果了,鼠标放在标签上DockPanel就瞬间弹出了,比较突兀。

3、在加载的时候先进行一下初始化工作,即先通过dockPanelEagle.Show();显示一下,在通过dockPanelEagle.HideSliding();进行隐藏。这种方法的得到的记过显示上有一定改善,但是也存在局部位置的刷新问题。

现在暂且用第二种方法处理的,对于这个问题是在是比较无语,尝试了好一阵也没有完美解决,请问大家有遇见过这个问题的吗?有好的解决方法不。

dockManager中DockPanel的刷新问题!的更多相关文章

  1. JSP中页面定时刷新

    1.JSP中页面定时刷新 <% //页面每隔30秒自动刷新一遍 response.setHeader("refresh" , "30" ); %> ...

  2. C++中输出流的刷新问题和 endl和 \n的区别

    <C++ Primer>第5版 P6中提到endl具有换行和刷新输出流两个作用,那么没有 endl是否还会将输出流中的内容输出到设备中,再刷新输出流呢? cout << &qu ...

  3. onunload事件火狐不支持,在IE浏览器中,只有刷新时该事件才发生

    onunload事件火狐不支持,在IE浏览器中,只有刷新时该事件才发生

  4. 前后端分离中的无痛刷新token机制

    今天我们来说一说前后端分离中的无痛刷新token机制 博主先来分享一波福利,最近挖到的宝藏,刚开始学Java的同学看 https://www.bilibili.com/video/BV1Rx41187 ...

  5. 在javascrit中怎样来刷新页面

    a页面里iframe了个b页面,我想实现在b页面里一个按钮,一按就刷新a页面,也就是父页面,不是只刷新iframe里面的b页面 哦~ 请问b页面里的<input type="butto ...

  6. iOS中UITableView数据源刷新了,但tableview当中的cell没有刷新

    你会不会遇到通过断点查看数据源模型的确刷新了,但是tableview没有刷新的情况,我遇到了,并通过下面的方法解决了,供大家参考! 在tableview中的数据源代理方法 p.p1 { margin: ...

  7. Winform中DockPanel(引用WeifenLuo.WinFormsUI.Docking.dll组件)的使用

    WeiFenLuo.WinFormsUI.Docking.dll是开源项目DockPanel Suite的一个类库,可实现像Visual Studio的窗口停靠.拖拽等功能.WeifenLuo.Win ...

  8. iOS中第三方框架刷新

    0.先加入主头文件 #import "MJRefresh.h" 1.添加下拉刷新 MJRefreshHeaderView *header = [MJRefreshHeaderVie ...

  9. ASP.NET Web Form和MVC中防止F5刷新引起的重复提交问题

    转载 http://www.cnblogs.com/hiteddy/archive/2012/03/29/Prevent_Resubmit_When_Refresh_Reload_In_ASP_NET ...

随机推荐

  1. 巧用freemarker

    使用Freemarker宏进行可扩展式模块化编程 该文是转载而来,并非我本人所写,但是觉得真心不错,所以收藏一下 一.前言 今天的文章聊一下freemarker的一些特性:宏,我们将使用它写出一些模块 ...

  2. windows Service 创建部署

    Windows Service简介: 一个Windows服务程序是在Windows操作系统下能完成特定功能的可执行的应用程序.Windows服务程序虽然是可执行的,但是它不像一般的可执行文件通过双击就 ...

  3. 15.linux 中无法输入指令

    怎么可以回到倒数第五行的输入状态啊……

  4. Python-lambda函数,map函数,filter函数

    lambda函数主要理解: lambda 参数:操作(参数). lambda语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边的返回值.lambda语句构建的其实是一个函数对象 map函数: ma ...

  5. KBMMW 4.93.10 发布

    例行更新,主要是bugfix. 4.93.10 June 4 2016 Important notes (changes that may break existing code) ========= ...

  6. 10.openssl x509

    主要用于输出证书信息.也能够用于签名.自签名.转换证书格式.还原证书为证书请求等.该命令非常强大,几乎实现了伪命令req,ca,verify,crl的所有功能,最牛的一点是该命令不需要通过配置文件就能 ...

  7. Linux不使用useradd创建用户

    手动创建用户的全过程:需要管理员权限. 1.在/etc/group中添加用户所属组的相关信息.如果用户还有辅助组则在对应组中加入该用户作为成员. 2.在/etc/passwd和/etc/shadow中 ...

  8. bat批处理重命名问题

    因为要重命名的字符串中有文字,导致重命名出来的文件名都变为乱码了,查理一下需要加两句话 1. @Echo Off Chcp 65001>nul SetLocal EnableDelayedExp ...

  9. case when语句后的表达式

    SQL中Case When语句的语法如下 Simple CASE expression: CASE input_expression WHEN when_expression THEN result_ ...

  10. Office 365 系列三 ------ 创建Office 365普通账号

    当我们购买或者试用Office 365的时候,微软或者世纪互联会发一封邮件给我们,里面就只有管理员的账号,那么作为我们IT 管理员应该给员工创建账号, 创建的过程如下: 一.登陆: http://po ...