![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
wpf
敢吹-敢喷-敢随-敢送
自己动手,丰衣足食。
展开
-
wpf devexpress
背景 winform切为wpf,使用devexpress插件参考的网站为:https://docs.devexpress.com/WPF/7875/wpf-controls1.GridControl行号设置这里主要有两个问题,一个是行号要从1开始,二是行号这一列的行宽设置(默认行宽到100后,数字就显示不全了)行宽是IndicatorWidth 属性,行号是RowIndicato...原创 2020-01-07 10:08:29 · 1786 阅读 · 2 评论 -
客户端升级关闭问题
最近遇到个问题,写的客户端在升级,或者重新安装时,有时候原始程序无法关闭,导致安装或升级失败,将目前的关闭流程记录如下。将我们的客户端 命名为"测试客户端",对应的exe文件命名为"test.exe".首先,我们在客户端程序里面,增加接收关闭消息的代码。(收到2048即关闭窗口) IntPtr hwnd = new WindowInteropHelper(this).Handle; ...原创 2018-06-12 20:23:43 · 417 阅读 · 0 评论 -
wpf GetPositionAtOffset移动位置错误
今天在使用GetPositionAtOffset 方法时,发现位置总是移动的不对,记录如下:首先是初始化richtextbox string str1 = "@aaa"; string str2 = "_m"; Run run = new Run(str1, richTextbox.Selection.Start); ri...原创 2018-06-21 16:46:05 · 945 阅读 · 1 评论 -
wpf图片不显示
今天在引入一个本地图片给image时,发现显示不出来,最后发现是生成操作选了none,而引入时,用的相对路径导致的。虽然解决了,但是具体为啥还是没搞明白,记录如下。三张图片,生成和复制操作为:1 资源+不复制2无+始终复制3内容+始终复制。四种赋值方式: BitmapImage bitmap = new BitmapImage(); bitmap.BeginInit();...原创 2018-06-20 09:37:25 · 1721 阅读 · 0 评论 -
wpf scrollviewer的虚拟化失效问题
今天遇到个问题,加载多条数据时,界面卡顿,原始代码,大致如下: <ScrollViewer VerticalScrollBarVisibility="Auto" > <ItemsControl x:Name="itemsControl1" > </ItemsControl>...原创 2018-10-08 13:47:30 · 2262 阅读 · 1 评论 -
this single-instance application could not connect to the original instance
写wpf单例启动程序时,在某台电脑上报了这个错,微软的帮助文档是这么说的https://docs.microsoft.com/zh-cn/dotnet/visual-basic/misc/this-single-instance-application-could-not-connect-to-the-original-instance复制如下此单实例应用程序未能连接到原始实例此单...原创 2018-10-09 10:36:23 · 362 阅读 · 0 评论 -
inno setup执行ngen.exe 命令
1.获取本地是否有.net环境2.安装结束的时候调用ngen.exe 命令。3.获取ngen.exe的路径。4.获取可执行程序的安装路径。5.执行命令另:因为安装路径可能存在空格,所以路径要加上引号。 function IsDotNET40Detected(): boolean;var success: boolean; install: car...原创 2019-01-24 16:59:57 · 1008 阅读 · 0 评论 -
innosetup win10 报错 EScintEditError
win10 下 innosetup 打开安装文件报错,用管理员权限启动innosetup 然后打开指定文件就好了.........原创 2019-06-03 11:37:20 · 436 阅读 · 0 评论 -
wpf自定义日历(仿qq)
wpf提供了Calendar 控件来进行时间选择,但是有些东西不太好改,就自定义一个自己的控件。目标是做一个类似于qq 聊天记录里面的那个日期选择控件需要实现的基本功能1.日期的显示2.某些日期可选,某些不可选3.前一个月 前一年 下一个月 下一年的切换首先来看界面,上部分比较好些 都是一些死的东西,添加一些button和textblock即可。下面的部分我们采用 ...原创 2019-06-28 17:36:44 · 1104 阅读 · 0 评论 -
wpf 利用Thumb 实现控件拖动
功能:实现控件的拖动(以Textblock举例)核心 就是利用Canvas.SetLeft 来控制Textblock的位置。首先,先看页面布局<Window x:Class="WpfApplication2.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"...原创 2019-08-05 10:13:28 · 2407 阅读 · 0 评论 -
wpf 修改style
最近有个奇怪的需求,希望能动态的修改DataTrigger,试了一下,没做出来,最后是通过新建了额外的一个Style解决,记录如下,希望在DataTrigger里面动态增加一个Trigger。 <Style TargetType="{x:Type ContentControl}" x:Key="mainContentAStyle"> <Style.Trigger...原创 2018-05-22 15:09:14 · 3089 阅读 · 0 评论 -
360拦截exe安装,开机启动项
最近对exe进行打包安装,发现总是被360弹框拦截,很不友好。最后解决方案如下:1.打包时,将开机启动做成可选项,供用户选择。2.对打包文件和exe文件进行数字签名3.将安装包提交到http://open.soft.360.cn 进行检测。另 360拦截与如何实现开机启动方式并没有太大的关系,以下几种方式都会被360拦截。1.从注册表中增加开机启动项SOFTWARE\Microsoft\Windo...原创 2018-05-22 10:59:03 · 3438 阅读 · 0 评论 -
wpf的binding学习记录
今天看一个同事写的代码,发现他的binding写的不是很规范,但是仍把前后台数据绑了起来,很是奇怪,自己写了几行代码做了下测试,记录如下。首先先新建一个Student类,包含id和name两个字段。(注释的行是正常写法) public class Student //: INotifyPropertyChanged { //public event原创 2016-05-04 10:47:44 · 515 阅读 · 0 评论 -
wpf 照片自适应变化
用wpf做一个客户端,接收服务器发来的三种人员信息(含图片),分别显示在三栏中。要求:1.可以通过设置项,来选择显示那种图片。2.每栏的最小可显示两张照片。3.每栏中不能有半张脸,即每栏正好能放下整数张照片。分享下实现思路如下:1.人员类中添加宽度属性(deviceWidth),每一栏的自定义控件叫做recoList,用来作为显示照片的binding值。原创 2016-05-05 17:06:58 · 5927 阅读 · 0 评论 -
wpf下,在aforge界面 画静态框的实现
利用afoge控件可以来实现usb摄像头播放。在winform下,利用newframe事件,可以实现每一帧的图像处理。但是如何在wpf下,利用afoge,则有些麻烦。播放功能是利用xmlns:wfi ="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"原创 2016-09-27 10:45:19 · 1710 阅读 · 0 评论 -
wpf下利用aforge,wpfmediakit和wincap调用usb摄像头简单分析
搜了两天的wpf下usb开发,总结如下aforge的核心就是在wpf调用winform的控件,利用System.Windows.Forms.Integration 包裹aforge控件。这种方式不能实现 newframe方法,(比如你想翻转usb摄像头的图像)。除此之外,对cpu的占用也比较高。在aforge较高版本中,不允许开发者去修改帧率,只能控制器分辨率。参考资料:htt原创 2016-11-23 11:20:22 · 5501 阅读 · 2 评论 -
wpf学习小结
从接触到wpf到现在大约有一年半的时间了,总结一下。相比于winform,wpf给我的第一感觉是这东西做界面太简单了,尤其是页面布局,winfrom需要去修改控件的dock ,anchor属性,而wpf用网格搞定,当窗口尺寸改变后,wpf可以很轻松的将各部分按比例放大或缩小。利用 blend 工具,可以很方便的修改标准控件的样式。wpf的思想是数据驱动,当你把数据和控件绑定好之后,需要原创 2017-03-14 17:58:16 · 475 阅读 · 0 评论 -
textwrapping的不同显示效果
wpf中,TextBlock的TextWrapping有三个属性,NoWrap(默认),Wrap,WrapWithOverflow。Wrap是按字符换行,WrapWithOverflow是按空格换行。比如我们的字符串中有一个很长的单词,如果用Wrap,可能到这个单词中的某个字符就直接换行了,而WrapWithOverflow则会把这个单词的所有都显示在同一行,即使有些显示不出来。如转载 2017-06-28 11:36:03 · 10466 阅读 · 0 评论 -
wpf listbox 滚动翻页功能
最近有个需求,需要通过 listbox滚动实现翻页功能。查了下资料 总结如下。代码: 点击打开链接方案一:利用ScrollViewer.ScrollChanged事件来实现当偏移量到底部时,进行相应操作。xaml中 对应的事件 private void ListBox_ScrollChanged(object sender, ScrollChangedE原创 2017-07-17 16:15:33 · 4587 阅读 · 0 评论 -
wpf mvvm学习笔记
新的工作需要用到mvvm框架,这几天抽时间系统了解了一下,记录如下。具体用到的可以是三个方面,(数据绑定,命令绑定,消息机制)1.数据绑定和wpf差不多,所有的viewmodel都继承ViewModelBase类,在里面的对象如果要可以绑定,都可以直接用this.RaisePropertyChanged完成即可。2.命令绑定在xaml中的事件命令,都可以在viewmodel层去原创 2017-07-18 20:27:02 · 595 阅读 · 0 评论 -
wpf Calendar控件 日期高亮显示
1对某些特殊日期进行高亮显示2解决鼠标移动到日期控件内,需点击两次外部才能将焦点移出的问题如果要高亮显示的日期是变化的,可以参考以下方法。首先要设置一下Calendar的CalendarDayButtonStyle,加入一个高亮显示的框(HaveHistoryBackground)。将其显示绑定到一个list里面,如果日期在list里面,则显示,不在则不显示。原创 2018-02-07 16:20:46 · 2186 阅读 · 1 评论 -
Wpf下使用lib的注意事项
之前做过一个小demo,里面需要在Wpf下调用SDK(lib)的任务,有些地方仍是不太懂,甚至是错误的,简单总结下,慢慢消化。1.c#是不能直接调用lib文件的,所以要把lib文件封装成dll文件。2.封装是要看一看原有的lib函数接口是否支持Unicode,简单来说,如果字符串参数用Char*表示不支持,如果用Tchar表示支持(具体还要看_UNICODE是否定义)。3. 如果不支持原创 2016-03-21 10:31:07 · 1417 阅读 · 0 评论