刷新
C#基于ScottPlot进行可视化

博主头像 本文以一个控制台应用与一个winform程序为例向大家介绍了C#如何基于ScottPlot进行数据可视化,并介绍了实现动态绘图的两种方式,一种是使用定时器,另一种是使用异步操作,希望对你有所帮助。 ...

[Winform]在Form里显示模态对话框ModalDialog

博主头像 在Form里显示模态Dialog 问题 如何在WinForm的一个Form里面弹出一个模态Dialog? 背景 程序的框架是Winform,只有一个窗口MainForm。MainForm里面是一个TabControl,每个TabPage是一个Form,每个TabPage的Form相互独立,互不干扰, ...

在WInform开发中实现工具栏/菜单的动态呈现

博主头像 在Winform系统开发中,为了对系统的工具栏/菜单进行动态的控制,我们对系统的工具栏/菜单进行动态配置,这样可以把系统的功能弹性发挥到极致。通过动态工具栏/菜单的配置方式,我们可以很容易的为系统新增所需的功能,通过权限分配的方式,可以更有效的管理系统的菜单分配到不同的角色用户,也就是插件化的处理方... ...

WinForm实现管理员权限运行的三种方式

博主头像 来源:https://mp.weixin.qq.com/s/ydBWABy7kwOWxNCQu4qYMA 在visual studio开发winform程序,生成msi安装包以后,代码运行似乎没有问题。但是,若是软件安装到了C盘,软件在执行某些操作,比如写文件、读文件等操作时,有可能会因为操作系统用 ...

DevExpress 各版本破解方法

博主头像 如果是首次安装Dev只需要下面两步流程就可以 第一步安装试用的最新版 Devexpress 22.2.4这步看直接去官网,安装官方试用的就可以 第二步安装破解补丁关闭防火墙或360 然后打开 DevExpress.Universal.Patch 选择22.2 版本 和对应的visual studio ...

在Winform应用中增加通用的业务编码规则生成

博主头像 在我们很多应用系统中,往往都需要根据实际情况生成一些编码规则,如订单号、入库单号、出库单号、退货单号等等,我们有时候根据规则自行增加一个函数来生成处理,不过我们仔细观察后,发现它们的编码规则有很大的共通性,因此可以考虑使用一些通用的业务编码规则生成,从而在系统中统一维护即可,本篇随笔介绍如何在WIn... ...

在winform中绘图

博主头像 今天跟大家分享一下最近做的一个程序中绘图功能的实现。 先来看看实现的效果: 具体实现 页面的设计 绘图设置页面的设计如下所示: 4个label控件,控件如下所示: 2个DateEdit控件,控件如下所示: 1个ComboBoxEdit控件,控件如下所示: 1个CheckedListBoxContro ...

C#winform软件实现一次编译,跨平台windows和linux、mac兼容运行,兼容Visual Studio原生界面Form表单开发

博主头像 一、背景: 微软的.net core开发工具,目前来看,winform界面软件还没有打算要支持linux系统下运行的意思,要想让c#桌面软件在linux系统上运行,开发起来还比较麻烦。微软只让c#的控制台软件支持在linux运行。 二、解决方案: 我想到的一个方案是自定义封装软件的System.Wi ...

【C#】【WinForm】MDI窗体

博主头像 MDI窗体的相关学习使用 1、设置MDI父窗体 在属性中找到IsMdiContainer选项,设置为True 2、添加MDI子窗体,在项目中依次选择添加->窗体,然后一直默认即可 添加后的项目目录(Form1为父窗口,Form2、Form3为子窗口) 3、在Form1.cs中,创建对应MDI子窗口的 ...

WinForm中UI假死的解决方法

博主头像 https://www.codenong.com/cs106719464/ WinForm中的UI假死其实是个老生常谈的问题了,但最近还是很多人问我该如何解决,所以今天就来说明一下如何解决UI假死的问题。实验程序界面如下图所示: 方法一:async + await + Task 首先看下面一段代码: ...

Winform跨线程访问UI

博主头像 在开发`winfrom`应用时,经常遇到异常:`System.InvalidOperationException:“线程间操作无效: 从不是创建控件“xxxx”的线程访问它。`出现这个异常的原因是创建这个UI的线程,和当前访问这个UI的线程不会是同一个。Winform为了防止线程不安全,因此对这个跨... ...

解读 --- System.Windows.Forms.Timer是前台线程吗?

博主头像 ## 引言 今天同事问了我一个问题,`System.Windows.Forms.Timer`是前台线程还是后台线程,我当时想的是它是跟着UI线程一起结束的,应该是前台线程吧? 我确实没有仔细研究过他们的异同,所以带着这个疑问探究一下`System.Windows.Forms.Timer`。 ## S ...

DXP TreeList 目录树

博主头像 # DXP TreeList 目录树 ## 1.需求背景 需要一个支持`勾选`,`拖动节点`,`保存各节点顺序`的目录树。 ![image](https://jsd.cdn.zzko.cn/gh/YuanjunXu/Images@main/src/image.3wqa9fpk8xo0.jpg) ## ...

EnableHeaderCheckBox导致空指针

博主头像 GridViewCheckBoxColumn以CheckBox的形式显示、编辑bool值,实现行选中效果。 如果需要在表头添加全选框,可以将EnableHeaderCheckBox设置为true: ```C# private void AddCheckColumn() { checkColumn = ...

DataGridView 控件分页

博主头像 在使用`Winform`开发桌面应用时,工具箱预先提供了丰富的基础控件,利用这些基础控件可以开展各类项目的开发。但是或多或少都会出现既有控件无法满足功能需求的情况,或者在开发类似项目时,我们希望将具有相同功能的模板封装成一个标准控件等,在这些场景下,`winform`自带的控件就有些乏力了,需要我们 ...

在DevExpress的GridView的列中,动态创建列的时候,绑定不同的编辑处理控件

博主头像 在使用DevExpress的GridView的时候,我们为了方便,往往使用一些扩展函数,动态创建GridView列的编辑控件对象,然后我们可以灵活的对内容进行编辑或者使用一些弹出的对话框窗体进行处理内容的录入,本篇随笔就是介绍这一主题:在DevExpress的GridView的列中,动态创建列的时候... ...