随笔分类 -  C#

使用或学习的过程中的一些记录
摘要:项目中有一个树形结构的资源,需要支持搜索功能,搜索出来的结果还是需要按照树形结构展示,下面是简单实现的demo。 1.首先创建TreeViewItem的ViewModel,一般情况下,树形结构都包含DisplayName,Deepth,Parent,Children,Id, IndexCode,Vi 阅读全文
posted @ 2018-11-28 20:03 Johar 阅读(661) 评论(1) 推荐(0)
摘要:最近的工作中,在GitHub上面发现了几个好玩的项目,保存一下: 1. WPF-Samples 2. wpftoolkit 3. gong-wpf-dragdrop 4. Vlc.DotNet 后面有发现再更新。 阅读全文
posted @ 2018-11-27 22:20 Johar 阅读(212) 评论(0) 推荐(0)
摘要:由于C#在性能方面,和C++还是有不少的差距,所以在项目中有一块是用C++的OCX控件实现,然后包括在WPF项目中。由于C++,C#属于不同的体系架构,造成了许多问题,特使是拖拽TreeViewItem到OCX控件上面,两者的渲染方式不同,OCX控件一直显示在最前面,所以拖拽的时候,看不见拖拽的Ad 阅读全文
posted @ 2018-11-27 21:58 Johar 阅读(920) 评论(0) 推荐(1)
摘要:最近项目上需要通过MVVM来控制TreeView,其中需要需要控制通过搜索来定位某个节点,正常逻辑下,首先通过需要在树上面找到该节点,然后选中该节点,并将该节点的父节点展开,这个时候需要通过MVVM来控制,需要绑定起来,只是一直没有binding上,代码如下: MVVM示例代码: 界面代码: 数据的 阅读全文
posted @ 2018-10-31 23:42 Johar 阅读(2186) 评论(0) 推荐(1)
摘要:最近公司有个CS客户端程序,有个登录界面,有个程序的主界面,程序支持注销功能,但是在注销后,客户端的内存一直以40M-50M的速度递增,因此猜测,应该是WPF程序出现了内存泄漏。下面主要记录优化内存泄漏的整个历程: 1.使用VS2013的性能和诊断找到问题点 在VS2013菜单分析-》性能和诊断,打 阅读全文
posted @ 2018-10-25 00:34 Johar 阅读(2999) 评论(2) 推荐(3)
摘要:由于项目需要,需要能够定位TreeView中的点,TreeView的节点数过多的情况下,即使找到了对应的节点并选中展示了,由于不在可视区域内,给用户的感觉还是不好,因此设计如下的Behavior,来实现选中的TreeViewItem显示在可见区域: 然后在TreeView中设置一下这个依赖属性为Tr 阅读全文
posted @ 2018-10-15 17:24 Johar 阅读(982) 评论(3) 推荐(1)
摘要:App.xaml.cs中的代码每次都差不多,故特地将其整理出来直接复用: 阅读全文
posted @ 2018-08-30 20:32 Johar 阅读(1800) 评论(4) 推荐(1)
摘要:项目中经常使用需要根据搜索条件查询数据,然后用卡片来展示数据。用卡片展示数据时,界面的宽度发生变化,希望显示的卡片数量也跟随变化。WrapPanel虽然也可以实现这个功能,但是将多余的部分都留在行尾,十分不美观,最好是能够将多余的宽度平分在每个ListBoxItem之间,比较美观,也符合项目需求。如 阅读全文
posted @ 2018-08-30 19:34 Johar 阅读(1633) 评论(0) 推荐(0)
摘要:公司项目有个需求,UI界面支持动态平均分割界面,想了想便想到用ListBox来实现,用UniformGrid作为ListBox的ItemsPanelTemplate,通过动态改变UniformGrid的Columns属性,可以动态分割界面。具体实现如下所示: 对应的ViewModel层代码: 软件运 阅读全文
posted @ 2018-08-30 19:18 Johar 阅读(7625) 评论(0) 推荐(1)
摘要:工作中的项目,CS客户端会通过MQ接收前端设备发送的信息,之前测试的时候,由于测试的数据不大,没有进行压力测试,软件可以正常工作,随着项目现场设备数量的增加,CS客户端从MQ中订阅的数据量不断增加,最终导致,客户端界面卡死。原来的数据流程图如下: 这个数据流程,在数据不大的情况下,是没有什么问题,数 阅读全文
posted @ 2018-07-27 23:10 Johar 阅读(1262) 评论(0) 推荐(0)
摘要:1. 问题 最近的一个项目,正常调试情况下,运行一切正常,但是有某个用户登录后,出现界面卡顿2-3mins后,才正常运行。 2.解决问题方法 (1)首先由于是必现问题,就想在vs的工作环境下调试一下,看看到底是什么地方比较慢,想法很理想,但是现实很残酷,没有找到问题所在。 (2)使用VS中的性能与诊 阅读全文
posted @ 2018-07-12 11:18 Johar 阅读(2377) 评论(0) 推荐(0)
摘要:最近公司项目,需要在wpf上面嵌入ocx控件,但是程序运行起来后,进行操作后,界面一直很卡,找了各种原因,没有找到原因,后来直接运行exe文件,速度顿时快了很多。 阅读全文
posted @ 2018-07-12 11:00 Johar 阅读(397) 评论(0) 推荐(0)
摘要:程序用的是log4net打印日志,偶现日志打印不全的问题,程序的log4net配置如下: PatternLayout 相关配置信息如下所示: -X号: X信息输出时左对齐; %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL, %d: 输出日志时间点的日期或时间,默 阅读全文
posted @ 2018-06-29 20:37 Johar 阅读(1377) 评论(0) 推荐(0)
摘要:1. 问题背景 由于xp系统上面最高只能安装.net framework 4.0,所以公司项目需要将原来项目的.net framework版本降低到4.0,具体的降版本很简单,只要把项目属性中的目标框架改成4.0,编译一下,解决一下出现的问题就可以了。但是在打包同事电脑上,登录界面都正常出来了,但是 阅读全文
posted @ 2018-06-29 19:19 Johar 阅读(2637) 评论(0) 推荐(0)
只有注册用户登录后才能阅读该文。
posted @ 2018-06-22 23:23 Johar 阅读(11) 评论(0) 推荐(0)
摘要:今天项目系统测试的时候,CS客户端的Restful请求都失败,但是实际上的服务是正常开启的,马上通过cmd指令ping了一下服务,正常;再用telnet试了一下端口,也是正常。不过随后发现在这台电脑上面,也无法访问服务的界面。这时候实在想不出是什么原因造成这种情况,都快亮出重启的大招的时候,看见测试 阅读全文
posted @ 2018-06-21 15:21 Johar 阅读(4851) 评论(0) 推荐(0)
摘要:最近公司项目需要对接Https接口,将对接的代码整理如下: 阅读全文
posted @ 2018-05-25 23:55 Johar 阅读(7328) 评论(3) 推荐(0)
摘要:WPF OCX控件 阅读全文
posted @ 2018-04-21 10:28 Johar 阅读(444) 评论(0) 推荐(0)
摘要:1.修改WebService接收长度 <binding name="IAuthServiceSoap11Binding" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647"/> <binding name="ICuServic 阅读全文
posted @ 2018-04-11 18:21 Johar 阅读(408) 评论(0) 推荐(0)
摘要:C#根据WSDL文件生成WebService服务端代码 并在地址栏, 输入步骤1保存文件的地址, 单击转到 输入合适的命名空间, 单击确认按钮即可. 阅读全文
posted @ 2018-04-10 19:21 Johar 阅读(381) 评论(0) 推荐(0)