wpf 客户端【JDAgent桌面助手】开发详解(四) popup控件的win8.0的bug
目录区域:
wpf 客户端【JDAgent桌面助手】详解(一)主窗口 圆形菜单。。。
wpf 客户端【JDAgent桌面助手】开发详解(二)桌面宠物制作详解
wpf 客户端【JDAgent桌面助手】开发详解(三) 瀑布流效果实现与UI虚拟化优化大数据显示
在做桌面程序或者web程序时候为了漂亮、操作灵活一般现在的程序都尽量减少弹出窗口式的交互方式,而且也不是很美观,除非是功能内容毕竟多的情况下回做弹窗。
小的功能点,一般都做成popup 小的弹出层样子更漂亮,占用屏幕区域小,操作也方便些。
在web开发中有很多好的pop 插件如:http://vadikom.com/demos/poshytip/
在很多年前做winform开发时候,想做这种漂亮的弹窗。比较麻烦。但是在wpf里面 内置了 Popup控件
可以定制:
1.弹出窗口的样式(可以是方形、圆角矩形、甚至是不规则图形).popup 控件的content是什么形状就展示出什么形状。
2.可以定制弹出层关闭的方式,通过设置Popup.StaysOpen属性被设置为True,当只有后台通过代码将Popup.IsOpen属性设置为False时候才会隐藏。如果设置Popup.StaysOpen属性被设置为False,当用户在其他地方单击鼠标时,Popup控件就会消失。
3.可以定制弹出窗口的位置,通过设置Popup控件的
PlacementTarget="{Binding ElementName=btnDown}"
Placement="Top"
这两个属性,来设置popup控件相对于某个控件弹出的位置,上面的代码设置的是弹出位置是在 id=btnDown 的按钮的Top上面弹出。
Placement 的选项总共有12种,足够大家使用。
Absolute = 0,
Relative = 1,
Bottom = 2,
Center = 3,
Right = 4,
AbsolutePoint = 5,
RelativePoint = 6,
Mouse = 7,
MousePoint = 8,
Left = 9,
Top = 10,
Custom = 11,
如果还是定位不准可以,使用
HorizontalOffset="0"
VerticalOffset="-4" 对位置进行细调。
总的来说微软的开发人员设计的这个popup控件使用起来确实很方便,灵活。项目中应用的也很多。如下图:

效果会比弹窗选择的效果好很多。。。
但是真的就这么简单么?
当开发完程序后,我们在多操作系统测试时候发现:win8.0 系统中 popup 弹出的位置老是不对。
如下图:
WinXp /Vista/Win7/Win8.1 下面windows 右键菜单弹出的位置(红色圈为 鼠标指针位置)

Win8.0 下面windows 右键菜单弹出的位置(红色圈为 鼠标指针位置)

Popup 控件也是这个情况。需要在代码里面判断windows的版本。如果是win8.0 popup 的HorizontalOffset、VerticalOffset值需要调整。
wpf 客户端【JDAgent桌面助手】开发详解(四) popup控件的win8.0的bug的更多相关文章
- ANDROID L——Material Design详解(UI控件)
转载请注明本文出自大苞米的博客(http://blog.csdn.net/a396901990),谢谢支持! Android L: Google已经确认Android L就是Android Lolli ...
- 详解DevExpress.LookUpEdit控件实现自动搜索定位功能(转)
转载自csdn博客 爱拼才会赢 的博客 地址是详解DevExpress.LookUpEdit控件实现自动搜索定位功能(转)
- Xamarin+Prism开发详解四:简单Mac OS 虚拟机安装方法与Visual Studio for Mac 初体验
Mac OS 虚拟机安装方法 最近把自己的电脑升级了一下SSD固态硬盘,总算是有容量安装Mac 虚拟机了!经过心碎的安装探索,尝试了国内外的各种安装方法,最后在youtube上找到了一个好方法. 简单 ...
- 《Linux设备驱动开发详解(第3版)》(即《Linux设备驱动开发详解:基于最新的Linux 4.0内核》)--宋宝华
http://blog.csdn.net/21cnbao/article/details/45322629
- wpf 客户端【JDAgent桌面助手】开发详解(三) 瀑布流效果实现与UI虚拟化优化大数据显示
目录区域: 业余开发的wpf 客户端终于完工了..晒晒截图 wpf 客户端[JDAgent桌面助手]开发详解-开篇 wpf 客户端[JDAgent桌面助手]详解(一)主窗口 圆形菜单... wpf 客 ...
- wpf 客户端【JDAgent桌面助手】业余开发的终于完工了。。晒晒截图
目录区域: 业余开发的wpf 客户端终于完工了..晒晒截图 wpf 客户端[JDAgent桌面助手]开发详解-开篇 wpf 客户端[JDAgent桌面助手]详解(一)主窗口 圆形菜单... wpf 客 ...
- wpf 客户端【JDAgent桌面助手】开发详解-开篇
上周二 发表了一个帖子:wpf 客户端[JDAgent桌面助手]业余开发的终于完工了..晒晒截图... 没有想到不到一个周时间已经浏览量过8千,估计过几天就过万了..很开心啊.. 评论中好多网友问我要 ...
- wpf 客户端【JDAgent桌面助手】开发详解(一)主窗口 圆形菜单
目录区域: wpf 客户端[JDAgent桌面助手]业余开发的终于完工了..晒晒截图wpf 客户端[JDAgent桌面助手]开发详解-开篇 内容区域: 这里开始主窗口 圆形菜单制作的过程,首先请大家看 ...
- wpf 客户端【JDAgent桌面助手】开发详解(二)桌面宠物制作详解
目录区域: wpf 客户端[JDAgent桌面助手]业余开发的终于完工了..晒晒截 wpf 客户端[JDAgent桌面助手]开发详解-开篇 wpf 客户端[JDAgent桌面助手]开发详解(一)主窗口 ...
随机推荐
- 2000多万个微信号被封全面禁止"集赞" 微信雷霆行动这次玩真的
微信雷霆行动自年初启动了打击网络黑色产业链以来,微信累计封停了2000万个招嫖账号,3万个假货公众账号,切实保护用户利益.你曾经中过招吗?Yes or No?说说你的看法吧. 同时,微信从9日起开始升 ...
- Q1微信用户增长11% 微信生态圈逐渐完善
就在今天早些时候,腾讯公布了Q1财报,微信和手Q游戏收入达18亿元,微信用户环比增长11%,微信生态圈逐渐完善.和xmyanke一起来看看具体的财报数字分析. 微信和手Q游戏付费用户环比增长100%以 ...
- BC.36.Gunner(hash)
Gunner Accepts: 391 Submissions: 1397 Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 65536 ...
- [Effective JavaScript 笔记] 第5条:避免对混合类型使用==运算符
“1.0e0”=={valueOf:function(){return true;}} 是值是多少? 这两个完全不同的值使用==运算符是相等的.为什么呢?请看<[Effective JavaSc ...
- UNITY3D与iOS交互解决方案
原地址:http://bbs.18183.com/thread-456979-1-1.html 本帖最后由 啊,将进酒 于 2014-2-27 11:17 编辑 “授人以鱼,不如授人以渔”,以UNIT ...
- function foo(){}、(function(){})、(function(){}())等函数区别分析
前面一段时间,看到(function(){}),(function(){}())这些函数就犯晕,不知道它到底是什么意思,为什么函数外要加小括号,函数后要加小括号,加和不加到底有什么区别……一直犯迷糊, ...
- Linux下tomcat服务
一:Linux下tomcat服务的启动.关闭与错误跟踪,使用PuTTy远程连接到服务器以后,通常通过以下几种方式启动关闭tomcat服务:切换到tomcat主目录下的bin目录(cd usr/loca ...
- 【云计算】Docker删除名称为none的Image镜像
先上删除命令: docker images|grep none|awk '{print $3 }'|xargs docker rmi docker强制批量删除none的image镜像 真是有段时间 ...
- .Net Attribute特性
1.什么是Atrribute 首先,我们肯定Attribute是一个类,下面是msdn文档对它的描述: 公共语言运行时允许你添加类似关键字的描述声明,叫做attributes, 它对程序中的元素进行标 ...
- 当年的文曲星cc800
你还记得当年的cc800吗?还记得黄金英雄传说吗?还记得用cc800编程的日子吗... 今天突然想起了我的cc800,好怀念那段爬在家里的阳台的木架子上,挠着头,编程序的日子...可惜,当时比较穷,没 ...