C#
文章平均质量分 71
_路在远方
学习积极分子、喜欢自习
展开
-
泛型和泛型方法扩展
泛型,顾名思义就是指一种抽象意义的数据类型,它满足一定的类型约束条件,比如必须要有无参的构造函数,或者必须继承某些接口,等等。如果说接口是对类成员的定义与声明的话,那么泛型是对类型声明的约束,这些抽象的数据类型可以代表符合条件的多种类型的数据,这些类型有共同的处理逻辑。比如对于系统标准的泛型List<T>,其中T代表任意的数据类型,List规定了可以同时存放多个T类型的数据,并且这些数据是有序排列的,List规定了T的访问方式,比如说List<T>,Add(T obj)代表向Li原创 2022-04-05 10:19:42 · 841 阅读 · 0 评论 -
自开发数据可视化平台
可以看一下可视化效果原创 2022-04-04 23:29:50 · 1233 阅读 · 1 评论 -
.Net Double类型数据问题探究
在.net中,系统标准的double数据类型是以一个结构体的形式存在定义一个double类型的数据可以是using System;class myTest{ public static double a = 1; public static System.Double b = 1;}其中,double是一个关键字,是对System.Double结构类型名称的简写形式从Double的结构体中可以看出Double的取值范围为-1.797693134原创 2022-04-04 17:10:44 · 1248 阅读 · 0 评论 -
.net中的托管资源与非托管资源,如何避免内存泄露
托管资源与非托管资源“非托管资源”指的是不受.net垃圾回收器控制的资源。比如打开一个数据库连接,所访问的数据库资源来源于服务器而不受.net控制。或者是客户机上其他非.net资源,资源的提供者不是通过托管代码编写的。这就是为什么对于数据库连接,需要写在一个using中using (var connection = new SqlConnection("connection_string_here")){ connection.open(); //..do something原创 2022-03-30 19:22:36 · 2533 阅读 · 0 评论 -
利用ASP.NET快速开发一款Web应用
需要用到的技术.NET CORE 2.1:一个跨平台的高性能开源框架,用于生成启用云且连接 Internet 的新式应用ASP.NET MVC:一种使用“模型-视图-控制器”设计模式构建 Web 应用和 API 的框架ASP Razor Page:一种混合HTML和.NET语言而开发的服务端页面SQL Server:一种关系型数据库EF Code First:代码优先实体框架,一种迁移脚手架工具,以代码模型类为驱动的数据库表结构自动构建与更新同步工具。BootStrap/EChart原创 2021-11-10 22:45:50 · 3882 阅读 · 0 评论 -
C#与Word文档的交互
C#访问word应用软件需要先安装word,word会向系统注册COM组件,COM组件提供了外部应用程序的一个访问接口,通过这些接口,可以很方便地程序性地操作word软件中的各种COM对象的属性和方法。比如文字,图片,形状,段落,光标位置,字体,格式,书签,页面,选择范围,查找/替换,剪贴板操作,响应事件等等,基本上能够在前台操作的功能,都能在类库中找到对应的接口。Word软件COM接口定义了一套不变的标准,外部程序可以对这些标准的接口进行二次封装,从而构建更加稳定便捷的文档操作特性。原创 2021-10-23 17:07:19 · 1349 阅读 · 0 评论 -
自开发数据库管理工具与标准MySQL WorkBench对比
目前介绍一下MySQL WorkBench的使用过程中的亮点和痛点:优点1.输出执行和结果日志2.语法检查和向导提示缺点1.注释不方便,无批量注释功能2. 输出无法快速看到字段类型很多时候要基于当前的字段类型才能够快速的写出正确的SQL计算逻辑3.只能导出CSV,且中文出现乱码基于以上,已经触碰到我无法忍受的痛点,于是决定自开发一个数据库管理工具,把已经存在的痛点解决。目前该程序软件已经实现了以下功能1.连接数据库,支持多数据库扩展,同时连接多个...原创 2021-07-26 22:46:24 · 1078 阅读 · 0 评论 -
自开发图像处理工具及实现框架
实际场景中的应用功能:批量处理图片工具,批量加载图片,批量裁剪,填充区域,记录处理过程,复用处理过程等。目前实现了整体的初版框架,实现的操作较少,后面根据需要会不断的扩展,支持的操作Operate有:enumOperateType{///<summary>///减去方框以外的部分///</summary>Cut,///<summary>///填充方框内部///</summa...原创 2021-07-25 12:57:19 · 233 阅读 · 0 评论 -
自开发Roc编辑器功能简介_v1.0
变量空间(VarSpace) 用于存储命令行面板生成的全局变量,也可以通过面板控件对全局变量进行各种操作 工作空间(WorkSpace) 用于加载/管理/备份本地或者服务器上的各种数据资源,作为软件数据处理的源头 预览面板(RocView) 用于调度展示请求到显示面板的展示任务 特性 动态更新特性 预览面板的内容不仅可以静态输出,还可以对以输出的内容做记录并动态更新结构化输出并可编辑特性预览面板的输出...原创 2021-05-06 03:12:55 · 294 阅读 · 0 评论 -
解决.net连接Mysql数据库中文报错的问题
解决.net连接Mysql数据库中文报错的问题如果在Mysql数据库中定义了一个中文名字的数据库表,直接用.Net Connector去访问数据库会报1146错误,即表名不存在解决方法用网上提供的方法,修改配置文件,设置服务器的默认字符集自己摸索的方法,修改临时访问数据库的字符集找connector的技术文档,文档写得清清楚楚当你使用多语言数据库时,必须在连接字符串中自定义字符集于是修改字符集为utf8(不是utf-8),实践成功! String connetStr = "s原创 2021-02-15 20:13:57 · 479 阅读 · 0 评论 -
WPF按钮矢量图标应用多种字体
WPF标准按钮是没有图标的,但是它提供了一个简单高效的设计框架帮助开发者快速定制开发各种各样的功能组件比如一个标准按钮可以写成<Button>Cilck me!</Button>给按钮增加一个图标 <Button> <StackPanel Orientation="Horizontal"> <Image Source="/Datas/Images/System.png" .原创 2021-01-25 23:21:11 · 677 阅读 · 0 评论 -
.Net高阶面向对象编程
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;namespaceProduct2.Test{public classPerson{[System.Xml.Serialization.XmlIgnore]...原创 2019-03-23 22:24:11 · 441 阅读 · 0 评论 -
XML序列化包含循环引用的解决方法以及.net和Java值/引用传递的区别
在实例转换为XML的过程中,如果实例存在循环引用的结构,则在转换为XML的过程中会抛异常:序列化类型 xxxxx 的对象时检测到循环引用解决方法是,在循环引用的字段前面加上一段修饰语句[System.Xml.Serialization.XmlIgnore]这样在序列化的时候,系统会自动忽略该字段实例的序列化.net与Java最大的不同在于,XML结构的字段是值传递,而.ne...原创 2019-03-10 13:44:22 · 579 阅读 · 0 评论 -
C#动态生成html数据并发送到本地剪贴板
C#/SAP动态生成html数据并发送到本地剪贴板 首先讲C# 我们都玩过Word,Excel,PowerPoint吧,不然你肯定进不了公司,面试一关都过不了当你将数据从一个位置复制到另一个位置时,复制除了文本之外,还会带有文本的格式,比如字体的颜色、大小、是否有下划线、是否有链接、是否有图片、表格等等...那么自然会引出一个问题,数据在剪贴板中到底如何储存的.原创 2017-11-25 02:07:20 · 1637 阅读 · 0 评论 -
C#窗体内嵌EXCEL应用程序,构造二重JSON通过RFC获取SAP系统数据
在做接口的时候,多个系统的数据交互,要求对各种字段和表关联比较熟悉,比如这个字段来自哪张表,它使用的数据元素是什么,它是否有固定值,是否有搜索帮助,对应的表有哪些主键。如果对表和字段不熟悉,就要频繁的使用SE11去查询和验证每一个字段是否在对应的表中存在,对于初学者而言,如果不了解SAP系统,则会花费很多时间在找表、验证表等毫无意义和重复性工作之中。原创 2018-05-08 16:16:10 · 691 阅读 · 0 评论 -
C#开发的几个有趣的WebService
原创 2018-05-23 19:28:13 · 803 阅读 · 0 评论 -
iText 技术简介
1. 创建一个空的PDF文件Documentdocument = new Document(PageSize.A4, 20, 20, 35, 20);stringfileName = "文件名.pdf";document.Open();PdfWriterwriter = PdfWriter.GetInstance(document, new FileStream(fileName,...原创 2018-06-17 08:24:25 · 2455 阅读 · 0 评论 -
C# 完美实现DataGridView批量复制多行/单元格数据并粘贴功能
C#系统默认情况下不支持批量粘贴多行或多个单元格数据,但是有时想直接复制dataGridView的一部分数据,然后一起粘贴到DatagridView的指定位置。关键步骤0.创建一个C#窗体应用程序this,调用一个DataGridView控件this.dataGridView11.重写this.dataGridView1的ProcessCmdKey方法,获取键盘点击事件,识别Ctrl+...原创 2018-10-12 23:53:41 · 15821 阅读 · 10 评论 -
C# RichTextBox文件拖拽自定义以及相关属性介绍
c# RichTextBox是.net中一个非常不错的控件,它支持格式化文本,图片,表格,加载第三方控件的功能,但是很多时候它并不能满足我们的需求,所以我们需要对它的功能进行调整或重写RichTextBox拖拽功能背景介绍默认情况下RichTextBox的属性面板中有一个EnableAutoDragDrop属性 当其设置为true的时候,RichTextBox就支持拖拽的功能。...原创 2018-11-11 02:57:34 · 2257 阅读 · 0 评论 -
根据注册表读取应用程序配置文件,根据XML文本动态生成树状列表,自定义SAP GUI登录页面
技术要点1.根据SAPGUI应用程序名动态读取登录配置文件的绝对路径,如果应用程序未安装,则提示相应消息。2. 根据获取的路径得到配置文件的XML文本字符串,其中包含所有的登录信息,调用上一篇日志解析XML的类方法,得到登录界面结构的文档实例3.通过文档实例利用控件类动态生成控件的实例TreeView和ListView,作为窗体面板控件的子节点4.TreeView和ListView联动...原创 2018-11-23 15:28:56 · 804 阅读 · 0 评论 -
WPF RichTextBox将FlowDocument节点元素移动到可视范围
默认情况下,当更新WPF RichTextBox时,系统不会自动将更新的内容展示到可视范围中,所以需要通过RichTextBox的一个方法ScrollToVerticalOffset来设置当前显示的位置但是ScrollToVerticalOffset方法的传入参数是以像素为单位的,看过许多文档说通过读取当前行的高度和行数以及显示屏的分辨率来获取行高,把我弄得头大不过最终还是找到了完美的解...原创 2018-12-08 19:59:40 · 883 阅读 · 0 评论 -
WPF和winForm 对 RichTextBox 的读写文件比较
感觉WinForm和WPF控件属性方法差别很大,我真觉得微软公司都是一群高智商,有足够的时间来干闲事的人,虽然都是一娘生的,但是差别怎么这么大咧!废话不多说了,我们进入正题首先来看WinFrom的RichTextBox对文件的读取FileProcess.SubFolderCheckOrCreate(Application.StartupPath, "LOG");//检查可执行路径...原创 2018-12-09 11:17:46 · 641 阅读 · 0 评论 -
WPF动态生成XML流文档(带缩进和颜色,以及属性排序和换行缩进)
功能概述:1.根据XML文本生成动态链表结构,具体的生成机制已经在相关博客论坛做过描述,这里不再赘述,不然就跑题了解析XML的完整代码已上传至GitHubhttps://github.com/PengChen01/CodeAnalyseProject/blob/master/AnalyseXML.cs2.根据XML文本生成的动态链表结构,通过递归的方式生成树状的深度链表结构,具...原创 2018-12-16 23:37:21 · 1119 阅读 · 0 评论 -
C#编写的扫雷游戏
我突发奇想,想用C#编写了一个扫雷游戏,在网上搜了半天,结果一无所获。在图书馆翻了半天的书,硬着头皮把一本很厚很厚的书看完了,总之,还是觉得收获挺大。为了能够学以致用,我开始通过C#来编写扫雷游戏。废话少说,我们先来了解一下扫雷游戏的一些功能:1.首先是界面设计:通过不同颜色大小的画刷画笔以及在窗体上绘制直线,将窗体分成两个区域。一个用来显示时间和雷数还有复位按钮,一个用来装载棋盘原创 2015-11-01 20:17:53 · 29364 阅读 · 97 评论