
wpf
lishuangquan1987
博客迁移地址:http://blog.lishq.cn
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
WPF界面设计学习
wpf界面设计学习,以此激励原创 2022-09-16 13:59:42 · 3062 阅读 · 0 评论 -
WPF字体大小随着控件大小自动变化
参考文章:https://blog.youkuaiyun.com/ljz_1985/article/details/17141087。实现的效果如下所示:(不使用ViewBox)当窗体变大或者缩小时,计算字体大小,然后绑定。原创 2022-09-12 15:52:11 · 5558 阅读 · 4 评论 -
wpf ListBox的CheckBox样式设置
实现如下效果:原创 2021-07-15 09:57:17 · 587 阅读 · 0 评论 -
Prism.Wpf从自定义Main函数中启动遇到的问题
最近想整一个插件式开发框架,想把UI做成一个类库,从另外一个类库的Main函数去启动它,当然UI肯定要用到MVVM框架Prism,插件开发时,窗体Show出来还要进行其他一些列的操作,才调用App.Run方法,为了保持运行顺畅,做了不少功课。之前我写过一篇文章,里面讲解Prism的使用:https://blog.youkuaiyun.com/lishuangquan1987/article/details/105014992通过查看Prism的源码,Container容器是在OnStartup函数中初始化的:Pr原创 2021-05-08 11:24:49 · 1155 阅读 · 0 评论 -
WPF简单自定义控件模板之TextBox
WPF中自带的TextBox的外观如下:现在要把它变成有水印提示的TextBox,并且主题可以改变:白色主题:黑色主题:以下是自定义控件需要考虑的:1.需要为TextBox增加一个水印属性,并且这个水印属性可以自定义设置2.黑白风格的颜色样式水印属性采用附加属性来给TextBox增加水印属性:public class TextBoxHelper: DependencyObject { public static string GetWaterMark(De原创 2020-12-13 12:20:25 · 4838 阅读 · 0 评论 -
WPF ListCollectionView实现过滤功能
关于ICollectionView/CollectionView/BindingListCollectionView/ItemCollection/ListCollectionView的介绍:https://www.cnblogs.com/tianciliangen/p/7010103.html它们之间的关系是:之前我写WPF实现过滤功能是从DataSource进行过滤,实现界面变化,这样...原创 2020-03-06 12:09:01 · 3235 阅读 · 2 评论 -
WPF中WindowFormsHost始终置顶的有效解决方案
https://www.xpnas.com/mip/9.html转载 2019-12-26 10:56:57 · 1118 阅读 · 0 评论 -
wpf 对ItemsControl的内容进行排序
System.ComponentModel;itemsControl.Items.SortDescriptions.Add(new SortDescription("Content", ListSortDirection.Ascending));itemsControl可以是listbox,listview或者其他原创 2019-09-24 16:17:35 · 1385 阅读 · 0 评论 -
WPF 虚拟化显示千万量级的数据(数据懒加载)
https://www.codeproject.com/Articles/34405/WPF-Data-Virtualization转载 2018-01-28 14:28:04 · 8622 阅读 · 0 评论 -
将二维字符串数组作为WPF ListView的ItemSource
在WPF中,平时我们使用绑定,是将一个对象数组当作数据源,而对象又有很多属性,间接的相当于二维数组,但这样做我们事先要知道对象有什么属性,有几个属性才能绑定,万一不确定ListView的列有多少行,需要在运行时才能确定呢?举例如下: 第一张图: 第二张图: 这两张图的数据的列数不一样,还有可能有其他列数不一样的文件数据,现在的需求是:要求我们的WPF ListView能够载入文件,然后原创 2017-11-24 19:46:28 · 3164 阅读 · 1 评论 -
WPF 使用匿名类作为显示的Model
在WPF中,一般使用MVVM模式,第一个Model为数据显示的模型,一般一个ListView显示对应一个Model,一个ComboBox显示对应一个Model等,需要建立很多Model. 有时候,我们只是在界面显示一次性信息,不需要进行双向绑定、通知更新,这个时候,我们可以使用匿名类来绑定,不需要重新建立Model. 先看我们一般的方法: 建立一个People的Model: public cl原创 2017-07-31 19:40:01 · 1984 阅读 · 0 评论 -
WPF 重写按钮变成音乐播放器按钮
在使用天天动听音乐播放器的时候,为什么别人的播放暂停按钮可以做的那么漂亮,于是想用WPF来实现下,WPF中可以重写按钮的样式,在winform中就不知道怎么搞了(可能可以来个usercontrol画个圆画两个横线设置些事件然后…)。废话不多说,直接上代码: 1.这里用到了资源字典,先建立一个资源文件,名字为ButtonStyle.xaml,代码如下:<ResourceDictionary xmln原创 2016-08-02 20:51:26 · 3049 阅读 · 0 评论 -
WPF中的值绑定转换
在写程序中经常遇到这样的情况:本示例代码下载地址 点一个按钮,另外一个按钮或者几个被禁用掉,点另外的按钮,被禁用的按钮又恢复正常,平常的处理方法是在按钮点击事件中直接对其他按钮的IsEnable属性赋值来处理。但有时候复杂的情况导致我们常常担心这样的写法过于复杂,就几个按钮和一些控件的状态,我们能不能只管写逻辑代码,不去管这么多控件的ENABLE和DISABNLE呢?使用WPF中的绑定值转换可以达原创 2016-12-21 21:23:12 · 2750 阅读 · 0 评论 -
WPF 自定义进度条
之前写过一篇文章[WPF 重写按钮变成音乐播放器按钮] (http://blog.youkuaiyun.com/lishuangquan1987/article/details/52097803), 其实这一篇是接着那一篇写的,这一篇重点介绍音乐播放器的滑动进度条。 本文示例下载地址 首先看看我做的效果: 具体原理就是用一个Canvas里放一个border和一个Rectangle,设置成不同颜色,原创 2017-01-05 22:46:51 · 2505 阅读 · 0 评论 -
WPF程序启动加载splash screen等待的方法
最近做项目,点开WPF程序,界面半天不打开,要过一会界面才出来,于是想到给它做一个splash window. 最开始想到的方法是:程序启动的时候,new 一个窗口(带有动画的等待),调用Show方法不阻塞后面的进行来显示。如下所示:namespace WPF_SplashTest{ /// <summary> /// Interaction logic for App.xaml原创 2017-03-30 21:53:01 · 14451 阅读 · 15 评论 -
WPF 音乐播放器
自己写的WPF音乐播放器,可以播放歌词,界面如下: 播放时,显示歌词界面如下: 添加歌曲到歌曲列表可以在\bin\debug\Music文件夹下直接把歌曲拖进去,这个歌曲文件夹也可以在config配置文件中更改:<?xml version="1.0" encoding="utf-8" ?><configuration> <startup> <supported原创 2017-03-28 19:01:50 · 1880 阅读 · 0 评论 -
WPF和Winform拖动窗体
winform: 原理:鼠标按下时,记录鼠标与窗体的位置,鼠标在按下状态下拖动时,触发MouseMove事件,在事件中再获取鼠标的位置,利用:窗体现在的位置-窗体之前的位置=鼠标现在的位置-鼠标之前的位置,来求解出窗体现在的位置,然后赋值给Location。实例:主窗体为MainWindow,获取鼠标的位置(相对于屏幕的左上角)用到了User32.dll中的函数 [DllImport原创 2017-05-05 19:03:41 · 2202 阅读 · 1 评论 -
WPF 定义自己的控件
最近在研究怎么制作自己的控件,制作好了之后给别人用,别人只需要修改控件的相关属性就可以适应他的需求,而无需去修改控件的模板。先上图再解释。 以下是我自己制作的控件截图: 温度计: 模拟微信文章后面的摆球: 由于是摆动的,截图看效果不明显,下载源码看 以下是我借鉴别人的加以改进的控件 进度条: win8转圈等待控件: 以下是纯别人写的 油表: 转圈等待:原创 2017-05-18 19:41:16 · 6944 阅读 · 0 评论 -
WPF实现Android或IOS的Tab控件效果
在手机上,我们看到干净整洁的TabControl,如下图所示: QQ的TabControl界面: 网易云的TabControl界面: 最后我用WPF实现的TabControl: 虽然虽然丑了一大节,但是但是至少也做到了外观相似啊,颜色、字体、宽度都可以自定义。 做这个控件的思路如下: 1.从Blend中找到TabControl和TabItem的XAML模版 2.原创 2017-06-13 21:45:50 · 2511 阅读 · 0 评论 -
WPF 线程
初学习WPF,记录下学习笔记 WPF更新界面与winform有相同的地方,也有不同的地方,相同的地方: 都可以使用直接赋值属性或者在其他线程上调用委托切换到主线程上更新数据,不同的地方是WPF可以使用绑定对象的方式更新界面,提供了很多灵活性,我现在要说的是相同的地方,尽管理论是相同的,但是使用起来还有有差别: 1.WPF 获取主线程调度的方法: private void Button_Clic原创 2016-08-01 20:21:02 · 849 阅读 · 0 评论