很久没有写东西了,新的一年新的开始吧. 很早就想自己开发一款日记本软件不仅自己使用,也可以让大家免费使用,最主要的是对自己有一个认可,自学WPF以来,感觉不很顺利,WPF的资料相对来说有点少,主要是自己太过急于求成了.好了,其它的话也就不多说了,本系列会讲解一些开发中的一些设计和技巧,希望对初学者有所帮助. 本篇给大家推荐一些东西: 1.WPF 版的富文本编辑器,Simple.HtmlEditor,具体网址大家可以找一找,我在这个编辑器的基础上修改了界面,增加了一些功能,模仿了kinded…
当我们用MVVM的时候要实现INotifyPropertyChanged,每次都要实现这个接口比较麻烦,所以基类的作用就体现出来了.代码如下: public class ViewModelBase : INotifyPropertyChanged, IDisposable { public event PropertyChangedEventHandler PropertyChanged; public bool IsInDesignMode; /// <summary> 显示名称 </…
由于是业余时间学习的 WPF 的相关开发且不怎么会使用 Blend 软件,所以开发这个客户端着实花费了我很长时间,比如文本编辑器的开发,最初是在 Simple.HtmlEditor 的基础上做的修改,但由于一些无法解决的问题而最终放弃了,后来干脆就自己开发一个吧,可定制性还高,想实现一些自己的功能也方便一些.最近终于是基本完工了,出来晒一下截图吧... 功能特色如下: 软件界面简单,使用方便,操作简便: 软件可按年份月份归档统计,按日记时间段.标题查询,日记列表拥有列表和概要两种模式,可以按照添…
本篇给大家推荐一个 WPF 版的富文本编辑器,SmithHtmlEditor,具体网址大家可以找一找,我在这个编辑器的基础上修改了界面,增加了一些功能,模仿了kindeditor 的界面,鉴于自己现在对WPF还不算纯熟,先凑合着用吧,等以后一定会自己写一个开源的WPF富文本编辑器的,功能有:基本的文本编辑,查看Html源码.打印.预览(未实现).导出文本文件.插入图片(不包含保存).插入表格等,界面如下: 1.字体颜色.背景颜色选择: 2.插入图片功能: 3.插入表格功能: 4.插入表情功能(这…
实际使用MVVM进行WPF开发的时候,可能会用到列表控件中每行一个编辑或删除按钮,这时直接去绑定,发现无法响应: <DataGridTemplateColumn Header="操作"> <DataGridTemplateColumn.CellTemplate> <DataTemplate> <Button Command="{Binding DeleteCommand}" CommandParameter="Sy…
当我们用MVVM设计模式的时候要实现INotifyPropertyChanged,每次都要实现这个接口比较麻烦,所以基类的作用就体现出来了.代码如下:   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 6…
使用虚幻引擎中的C++导论(二) 第一,这篇是我翻译的虚幻4官网的新手编程教程,原文传送门,有的翻译不太好,但大体意思差不多,请支持我O(∩_∩)O谢谢. 第二,某些细节操作,这篇文章省略了,如果有不懂的,去看其他教程. 第三,没有C++编程经验,但有其他OOP语言经验的朋友.要先了解C++的基础. 深入研究 你依然和我在这里冒险.太好啦,下一个话题,围绕游戏类的继承关系进行介绍.在这个部分,我们将要看到很多基类,谈一谈他们之间的关系,在这里我们可以看到虚幻引擎如何使用继承和组合去建立自己的游戏…
之前在网上看到很多关于组件开发的资料,但真正可以用到框架内的却很少.今天贴出自己做的组件,并适合大部分框架的代码. 组件开发需要先做出组件的基类,然后由其他的各类组件去继承这个基类,下面是组件基类的代码. 组件基类: public abstract class Component { public abstract string Name { get; } public abstract string Icon { get; } public abstract string Descriptio…
1:每个析构函数只会清理自己的成员(成员函数前没有virtual).2:可能是基类的指针指向派生类的对象,当析构一个指向派生类的成员的基类指针,这时程序不知道这么办,可能会造成内存的泄露,因此此时基类的析构函数要定义为虚函数:基类指针可以指向派生类的对象(多态),如果删除该指针delete[]p,就会调用该指针指向的派生类的析构函数,而派生类的对象又会自动调基类的成员函数,这样就会把派生类的对象释放,如果基类的析构函数没有定义成虚函数,则编译器实现的静态绑定,在删除基类的指针,只会释放基类的析构…
MVVM模式解析和在WPF中的实现(二) 数据绑定 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在WPF中的实现(三)命令绑定 MVVM模式解析和在WPF中的实现(四)事件绑定 MVVM模式解析和在WPF中的实现(五)View和ViewModel的通信 MVVM模式解析和在WPF中的实现(六)用依赖注入的方式配置ViewModel并注册消息 0x00 数据绑定要达到的效果 数据绑定要达到什么效果呢,就是…