wpf 悬浮窗口的实现
又到了写点东西的时候,因为有了新的收获,所以用随笔来记录下自己的成长。话不多说,正入主题。
最近又遇到一个新的需求,有一组控件,需要悬浮显示在面板的边缘上,刚开始的时候,是不显示的,点击后显示,然后再次点击,隐藏。就这么一个功能,折腾了一天。
实现的方法很多,本次使用了DevExpress里面的DockLayoutManager控件。从DevExpress的官网上下载了一个Demo,然后学习了下。DevExpress的控件使用,搜索资料好像不多,当然也可能是我的搜索方法不对。
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:dxdo="http://schemas.devexpress.com/winfx/2008/xaml/docking" xmlns:dxcore="http://schemas.devexpress.com/winfx/2008/xaml/core" xmlns:dxmvvm="http://schemas.devexpress.com/winfx/2008/xaml/mvvm" x:Class="CreateAutoHiddenPanels.Window1" Title="Window1" Height="300" Width="640" ><Grid><dxdo:DockLayoutManager Margin="12" x:Name="dockManager1" dxcore:ThemeManager.ThemeName="Office2010Blue" AutoHideExpandMode="MouseDown" ><dxdo:DockLayoutManager.AutoHideGroups><dxdo:AutoHideGroup DockType="Bottom"><dxdo:LayoutPanel x:Name="paneFindResults" Caption="Find Results" ShowCloseButton="False" ShowControlBox="False" ShowMaximizeButton="False" ShowPinButton="False" CaptionVerticalAlignment="Stretch" CaptionHorizontalAlignment="Stretch" TextWrapping="WrapWithOverflow"AllowDockToDocumentGroup="False" CaptionWidth="150" ItemWidth="150"AllowMaximize="False"AllowFloat="False"CaptionImage="Image/right.png"CaptionImageLocation="AfterText"><Grid><TextBlock/></Grid></dxdo:LayoutPanel></dxdo:AutoHideGroup></dxdo:DockLayoutManager.AutoHideGroups></dxdo:DockLayoutManager></Grid> </Window>
运行效果:
点击FindResults后,出现FindResults窗口。
这里需要的注意点:
1、 点击最下面的FindResults,可以显示或者隐藏FindResults窗口,为了实现该功能
需要把dockManager1的AutoHideExpandMode设置成"MouseDown"。
2、显示出来的FindResults窗口的标题,点击后,并不会隐藏,我的需求是不显示。
所以需要paneFindResults的ShowCaptionImage 设置成False。
3、为了防止双击显示出来的FindResults窗口会最大化,需要屏蔽到下面的两个属性。
AllowMaximize="False" AllowFloat="False"
转载于:https://www.cnblogs.com/lonelyxmas/p/10534141.html
wpf 悬浮窗口的实现相关推荐
- 创建 WPF 不规则窗口
创建 WPF 不规则窗口 ================================================= 本文为khler原作,转载必须确保本文完整并完整保留原作者信息及本文原始链 ...
- Android 悬浮窗口
Android 悬浮窗口 一.创建悬浮窗口步骤 1.实现一个ViewGroup类,作为悬浮窗口的界面类,以便在里面重写onInterceptTouchEvent和onTouchEvent方法, ...
- Android中悬浮窗口的实现原理和示例代码
用了我一个周末的时间,个中愤懑就不说了,就这个问题,我翻遍全球网络没有一篇像样的资料,现在将实现原理简单叙述如下:调用WindowManager,并设置WindowManager.LayoutPara ...
- 细数Android 7.0“牛轧糖”的五大缺陷:不支持悬浮窗口
导语:当前,Android 7.0 Nougat(牛轧糖)已经开始被缓慢部署至全球各地的Android设备中.按照惯例,仍然是Nexus设备首先获得谷歌最新的移动操作系统,其他的智能手机则还需要等待一 ...
- 使用WindowManager添加View——悬浮窗口的基本原理
Android系统中的"窗口"类型虽然很多,但只有两大类是经常使用的:一是由系统进程管理的,称之为"系统窗口":第二个就是由应用程序产生的,用于显示UI界面的& ...
- android 悬浮窗口和主界面同时显示,Android 悬浮窗口(及解决6.0以上无法显示问题)...
思路实现 通过WindowManager添加一个View,创建一个系统顶级的窗口,实现悬浮窗口的效果. 本篇思路,来源于郭霖大神的悬浮窗口教程. 大致介绍WindowManager 类 创建的对象: ...
- Android WindowManager和WindowManager.LayoutParams的使用以及实现悬浮窗口的方法
1.理清概念 我们使用过Dialog和PopupWindow,还有Toast,它们都显示在Activity之上.那么我们首先需要理解的是android中是如何去绘制这些UI的呢?这里我只讲我所理解的, ...
- [Jinkey 原创]震惊!iOS 系统居然自带悬浮窗口调试工具
原文链接 : 震惊!iOS 系统居然自带悬浮窗口调试工具 -- Jinkey 原创 原文作者 : Jinkey 1 背景 英文原文: http://ryanipete.com/blog/ios/swi ...
- android 添加随意拖动的桌面悬浮窗口,android 添加随意拖动的桌面悬浮窗口
用过新版本android 360手机助手都人都对 360中只在桌面显示一个小小悬浮窗口羡慕不已吧? 其实实现这种功能,主要有两步: 1.判断当前显示的是为桌面.这个内容我在前面的帖子里面已经有过介绍, ...
最新文章
- 几款不同颜色LED的伏安特性
- 漫谈可视化Prefuse(四)---被玩坏的Prefuse API
- java 泛型 引用_Java嵌套自引用泛型
- 华为android升级国内版,华为EMUI5.0系统升级成为国内安卓升级的标杆
- Debian on VirtualBox下共享win7文件夹设置
- 什么叫缺位_一位父亲能够给予孩子的最好礼物是什么?看看这部电影给出的答案...
- jquery 请求jsp传递json数据的方法
- python教程400集笔记,Python学习中的笔记--集合相关,python笔记--集合
- 57、剑指offer--二叉树的下一结点
- Linux基础命令---cp
- Java——can U do
- Tbschedule源码通读
- ffmpeg之 一张/多张图片合成视频
- html游戏官网制作 英雄联盟LOL游戏网站设计与实现 (web课程与设计)
- 重磅报告 | 《中国企业2020:人工智能应用实践与趋势》
- curry化 js_JS手动实现柯里化(curry)函数
- 谱尼医学幽门螺旋杆菌快速检测 三步直达 欢迎选测~
- 经验分享 | 关于NASA VIIRS数据
- [C语言]成绩与平均分问题:编写函数ReadScore()和Average(),输入某班学生某门课的成绩(最多不超过40人),当输入为负值时,表示输入结束,用函数编程统计成绩高于平均分的学生人数。
- 力扣中国(LeetCode) 算法题 有效独数(python)
热门文章
- 2021年北京值得去的100家规模互联网大厂公司全名简称
- 华为mate40pro和p40pro区别-华为mate40pro和p40pro哪个拍照好
- java 字符 加密_Java 字符串的加密与解密
- 八斗大数据20期冲击百万年薪完结分享
- C++数字图像处理篇之图像加马赛克
- 一个猜拳写了一晚上 麻痹……
- scrapy框架爬取校花网站的升级版
- SpringBoot将数据放入Excel里面通过浏览器直接下载到本地
- 基于Swing的Java学生成绩管理系统
- SpringCloud微服务实战——搭建企业级开发框架(二十七):集成多数据源+Seata分布式事务+读写分离+分库分表