摘要: 上一小节,主要介绍了构建最小级别的安装包,这个安装包所做的事情很简单,主要是打包好一些文件,然后放到用户机器的某个位置下面。 这个小节,主要是总结安装过程的各种行为如何使用Wix编写。 一、写注册表 安装过程经常会给注册表写东西,这个方法是通过 RegistryKey 元素实现的,通常用 Root 阅读全文
posted @ 2020-01-09 20:48 内心澎湃的水晶侠 阅读(753) 评论(0) 推荐(0) 编辑
摘要: Wix 被广泛应用在制作安装包程序,相比于微软官方提供的安装包模板更灵活和便捷。 一、环境搭建: 网站地址:https://wixtoolset.org 1. 安装Wix,必备 2. 安装VS 扩展,根据自己使用的VS版本下载相应的扩展。可选,为了方便的使用VS创建wix工程并编译。 二、安装包目标 阅读全文
posted @ 2020-01-07 22:44 内心澎湃的水晶侠 阅读(1658) 评论(1) 推荐(0) 编辑
摘要: VisualStudio 为了节省开发人员时间,提供了很多对数据库的快捷操作: 下面介绍使用GUI,快速搭建数据库表的增删改查: SQlite: 前期准备: 1. VisualStudio 安装两个插件: 2. 数据源准备: SQlite 制作的数据库一个 步骤: 1. 新建 winform 工程 阅读全文
posted @ 2019-12-30 22:27 内心澎湃的水晶侠 阅读(861) 评论(0) 推荐(0) 编辑
摘要: RichTextBox: 常用的格式化文本方法: 1. 加粗 Font newFont; var oldFont = this.richTextBox1.SelectionFont; if (oldFont.Bold) { newFont = new Font(oldFont, oldFont.St 阅读全文
posted @ 2019-12-28 21:18 内心澎湃的水晶侠 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 总结一下两个非常常用的控件: 1. Radiao: 属性: Checked: 是否选中,选中内部出现一个黑圈,未选中没有黑圈 AutoCheck: 默认点击改变选中,设置此属性false,可以取消这个行为,需要自己找时机手动设置 Checked 属性 事件: CheckdChanged: 仅当前ra 阅读全文
posted @ 2019-12-28 18:12 内心澎湃的水晶侠 阅读(744) 评论(0) 推荐(0) 编辑
摘要: 对于桌面应用,归类总结一下最常用的事件 一 鼠标移动事件 用户行为:鼠标移入控件又移出控件 鼠标在控件外侧,准备移入控件,无事件 移入控件边界,接受到 MouseEnter 事件 移入之后,接收到 MouseMove 事件,事件不停的发送,一旦cursor变换,发送 MouseHover 事件 鼠标 阅读全文
posted @ 2019-12-28 15:11 内心澎湃的水晶侠 阅读(2350) 评论(0) 推荐(0) 编辑
摘要: 上一小节,我们已经准备好了一个数据库文件,现在我们先不用微软包装好的各种Entity Framework, 自己用基础的方法对数据库进行增删改查。 前期准备: 新建一个console工程,把上一小节的数据库拷贝到工程目录下,copy local 设置成true, 目录结构大致长这样: 然后添加一个n 阅读全文
posted @ 2019-12-25 22:52 内心澎湃的水晶侠 阅读(553) 评论(0) 推荐(0) 编辑
摘要: 搭建好Sqlite数据库环境,构建一个简单的SQlite数据库文件 1. 安装 SQlite Database Browser 2. 新建一个数据库 3. 新建一张表 4. 添加一些字段 5. 添加数据 保存,命名为Student.db OK, 用了几分钟我们的数据库已经准备妥当,下面就开始通过c# 阅读全文
posted @ 2019-12-25 22:33 内心澎湃的水晶侠 阅读(919) 评论(0) 推荐(0) 编辑
摘要: Anchor 是一个常用属性,用来控制当窗体大小变化,控件如何自动调整自身大小和位置 一 仅设置一个值 如果此时将窗体放大,将会变成这样: 由于固定了top, 所以top不变,那么bottom自然会因为高度变大,独自增加全部大小。 对于left right 则将窗体宽度增量平分,然后分摊给两者,即各 阅读全文
posted @ 2019-12-19 22:24 内心澎湃的水晶侠 阅读(648) 评论(0) 推荐(0) 编辑
摘要: c# 调试程序时常常需要借助 call stack 查看调用堆栈,实际上通过code也可以获取: class Program { static void Main(string[] args) { Test(); } private static void Test() { var result = 阅读全文
posted @ 2019-12-07 22:07 内心澎湃的水晶侠 阅读(4310) 评论(0) 推荐(0) 编辑