
C#
哎呦喂O_o嗨
小小白,希望与大家共同学习。不懂之处,还请多多指教
展开
-
C#开发工具VisualStudio安装
C#开发工具VisualStudio安装原创 2022-10-31 17:34:55 · 6122 阅读 · 0 评论 -
windows事件查看器位置
常见的作用:类似于C#等语言开发的客户端程序,偶尔会遇到捕获不到异常的情况。这个时候不要慌!windows事件查看器的作用发挥了!它无时无刻都在记录所有的程序日志和操作事件,即便是来无影去无踪的异常也无所遁形。1.打开控制面板,搜索”事件查看器“2.点击”查看日志“其中:这几个文件都是日志信息,”应用程序“文件可以着重关注一下。...原创 2021-07-26 16:30:32 · 693 阅读 · 0 评论 -
程序图标任务栏右侧显示以及C#使用HttpListener创建http服务端
本项目地址点我下载一、程序图标任务栏右侧显示,最终图例:1.修改主窗口Form1的属性ShowInTaskbar的值为:false2.拖控件ConTextMenuStrip至主窗口,饼修改名称为:myMenu3.拖控件notifyIcon至主窗口,并修改名称为:myIcon4.修改myIcon属性ContextMenuStrip为myMenu,并设置Icon图标5.myMenu控件添加‘项’并设置名称为退出,给该项添加点击事件:退出ToolStripMenuItem_Click6.myIc原创 2021-06-09 17:14:12 · 292 阅读 · 0 评论 -
C#嵌入谷歌浏览器内核
1.右击项目,选择.net框架为4.5以上:2.右击项目,选择“管理Nuget程序包”,点击“浏览”,搜索“CefSharp”,选择“CefSharp WinForms”下载安装。安装之后到项目的引用下查看,会出现:CefSharp、CefSharp Core、CefSharp WinForms3.窗口中拖入一个panel控件,用于存放浏览器载体,然后上代码:using CCWin;using CefSharp;using CefSharp.WinForms;using log4net;原创 2021-05-25 17:52:23 · 5529 阅读 · 0 评论 -
C#文件操作工具类
获取指定文件夹中最新创建得文件信息:using System;using System.Collections.Generic;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;namespace util{ /// <summary> /// 获取指定文件夹中最新创建得文件信息 /// </summary> public原创 2021-05-25 17:00:33 · 362 阅读 · 0 评论 -
C#对象工具类
1.根据List集合中泛型对象的某一个时间字段,对该List集合进行排序:/// <summary>/// UavPatrolInfo对象的videoCreateTime属性比较器/// 重写Compare方法/// </summary>public class ReComparerVideo : IComparer<UavPatrolInfo>{ //对年龄进行比较 public int Compare(UavPatrolInfo s1, U原创 2021-05-25 16:58:35 · 190 阅读 · 2 评论 -
C#使用Minidump导出内存快照Minidumper
调用:// 放在主程序try-catch异常处理下string dumpFile = System.IO.Path.Combine(System.Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "dump.dmp");MiniDumper.Write(dumpFile);方法:using System;using System.Collections.Generic;using System.Linq;using原创 2021-05-25 16:49:38 · 833 阅读 · 0 评论 -
C#日期时间相关工具类
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace util{ class DateTimeUtils { /// <summary> /// 根据当前年份和月份查询当月的所有日期集合 /// </summary> /// <param name="year原创 2021-05-25 16:41:59 · 345 阅读 · 1 评论 -
C#获取视频总时长
前提:需要使用到执行程序(需要自己下载,哪个版本都行):ffmpeg.exe,可以点我获取下载地址,或者点我直接下载/// <summary>/// 获取视频时长/// </summary>/// <param name="sourceFile">视频地址</param>/// <param name="ffmpegfile">ffmpeg存放文件夹地址</param>/// <returns></ret原创 2021-05-25 16:39:06 · 2959 阅读 · 4 评论 -
C#调用cmd执行视频截图命令
前提:需要使用到执行程序(需要自己下载,哪个版本都行):ffmpeg.exe,可以点我获取下载地址,或者点我直接下载/// <summary>/// 调用cmd,执行截图命令/// </summary>/// <param name="videoUrl">视频路径(D:/VisualStudioProjects/Projects/1.mp4)</param>/// <param name="videoImageSaveUrl">图片保存原创 2021-05-25 16:32:36 · 679 阅读 · 0 评论 -
C#程序添加快捷键
1.给按钮添加快捷键按钮中Text属性后面添加关键字:(&O)—其中“O”表示快捷得键盘按钮。即:Alt+O就可以键盘快捷键使用了2.快捷键打开某个窗口或者事件首先,给窗口注册键盘事件:keyDown其次,代码中添加判断,判断某个按钮实现某个事件。代码示例如下:/// <summary>/// 键盘按钮事件/// </summary>/// <param name="sender"></param>/// <param n原创 2021-04-21 18:07:27 · 1460 阅读 · 0 评论 -
C#使用第三方驱动连接oracle数据库
准备驱动:Oracle.ManagedDataAccess.dll 可以点我下载或者去官网搜索下载注意:每次导入的包的时候,别弄错啦,是这个:using Oracle.ManagedDataAccess.Client;封装类如下:using System;using System.Data;using System.Windows.Forms;using Oracle.ManagedDataAccess.Client;namespace hsBankZjdzManager.Utils{原创 2021-04-16 14:38:21 · 469 阅读 · 0 评论 -
C#打印机套打三联单
三联单长这样:打印出来的效果长这样:正题:如果在以下步骤中,有部分步骤因为打印机驱动原因没法实现,可以点我下载,或者自己根据打印机型号去官网下载相应打印机驱动。一、打印机配置将针式打印机连接入电脑,进入“控制面板”-》“设备和打印机”,如果打印机那一栏出现了刚连入的打印机,说明连接成功。如图:如图:如图:这样就配置好啦,但是还有小小的最后一个小步骤需要注意。每次使用打印机时,将左边的齿轮推至0刻度,并将单据卡在齿轮上:二、C#代码添加三个按钮:分别是“设置打印机”、“设原创 2021-04-13 15:48:05 · 2398 阅读 · 0 评论 -
C#Excel导入导出以及导出为txt文件
using Aspose.Cells;using log4net;using System;using System.Collections.Generic;using System.Data;using System.Data.OleDb;using System.Drawing;using System.IO;using System.Linq;using System.Text;using System.Threading.Tasks;using System.Windows.F原创 2021-04-06 14:53:38 · 424 阅读 · 0 评论 -
C#中ComBox赋值取值
效果图:1.新建实体类:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace hsBankZjdzManager.Entity{ /// <summary> /// 下拉框赋值模板 /// </summary> public class ComBo原创 2021-04-06 09:21:16 · 5753 阅读 · 0 评论 -
C#DataGridView单元格使用日历
效果图如下:第一步:右击项目或者在工具类中新建类且类名为【CalendarColumn】类代码如下:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace hsBankZjdzManager.Utils{原创 2021-03-31 09:41:04 · 1651 阅读 · 0 评论 -
C#DataGridView删改
温馨提示:以下代码无法直接复制粘贴使用,主要是其中用到的思路================1.删除/// <summary>/// 删除列表中指定行/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void toolStripButton7_Click(object sender, EventArgs e原创 2021-03-26 14:04:05 · 443 阅读 · 0 评论 -
log4net日志使用
1.下载log4net.dll文件并导入下载地址下载后,需要将log4net.dll文件分别放一份到bin/Debug、bin/Release目录下,否则可能会不生效导入:右击项目名称-添加-引用-浏览(选择log4net.dll文件)-确定最后结果:2.添加配置文件Log4net.config,并设置文件属性(“赋值到输出目录”:始终复制)3.Log4net.config文件内容:<?xml version="1.0"?><configuration> <原创 2021-03-26 11:29:07 · 204 阅读 · 0 评论 -
C#中DataGridView操作
DataGridView官方介绍1.DataGridView增加数据// 先清理,防止数据脏乱skinDataGridView1.Rows.Clear();// 获取最新行的索引int index = skinDataGridView1.Rows.Add();// 添加数据skinDataGridView1.Rows[index].Cells[0].Value = "第index行第一列";skinDataGridView1.Rows[index].Cells[1].Value = "第in原创 2021-03-26 11:05:29 · 5482 阅读 · 0 评论 -
sqlServer增删改查简单封装类
1.封装类using System;using System.Collections.Generic;using System.Data;using System.Data.SqlClient;using System.Linq;using System.Text;using System.Threading.Tasks;namespace hsBankZjdzManager.Utils{ /// <summary> /// sqlserverAPI公共类原创 2021-03-22 17:13:47 · 312 阅读 · 0 评论 -
修改sqlserver2000登录方式为账号密码登录
背景:由于刚开始没注意或者点的过快,最终选择了windows验证登录方式,但是这种登录方式如果在跨服务器远程登录时就会失效。例如报错:“用户null登录失败,原因:未与信任sqlserver连接相关联”解决方案:最简单有效的方法就是修改登录方式为:账号登录和windows验证登录(即两种方式皆可登录)方法:第一步:修改sa账号密码第二步:开启账号密码登录(windows验证登录没有失效)...原创 2021-03-22 15:55:41 · 1010 阅读 · 0 评论 -
C#pictureBox滚轮缩放与拖拽
1.添加四个鼠标事件:MouseWheel、MouseDown、MouseUp、MouseMove12.MouseWheel:滚轮事件,控件中如果没有,需要手动添加:// skinPictureBox1添加滚轮缩放时间skinPictureBox1.MouseWheel += new MouseEventHandler(skinPictureBox1_MouseWheel);skinPictureBox1.SizeMode = PictureBoxSizeMode.Zoom;3.四个事件代码如原创 2021-03-03 16:34:07 · 4438 阅读 · 2 评论 -
C#图片上的画的小图标添加点击事件
1.首先认识一下这个函数:System.Drawing.Rectangle,用于:存储一组整数,共四个,表示一个矩形的大小和位置。2.有了这个函数之后,就可以通过小图标的大小和位置来确定一个举行并保存在这个函数中。3.创建集合用于标识每个小图标的信息:/// <summary>/// 用于划定区域/// </summary>private IDictionary<string, Rectangle> rect = new Dictionary<strin原创 2021-03-03 15:27:03 · 1067 阅读 · 2 评论 -
C#程序自动更新功能
思路:1.在后端接口项目中配置程序的最新版本,并在程序的配置中配置当前版本。2.在程序启动时,向后端请求获取最新版本接口,并匹配程序配置中的当前版本。3.若不匹配,则表示不是最新版本,需要更新。这时,再次像后端请求获取最新程序的安装包接口(压缩包文件),并直接解压到程序根目录,替换需要的文件。(程序不能直接替换和删除正在运行的文件,但是可以重命名正在运行的文件且并且还可以修改后缀。所以,可以考虑先把需要被替换的文件重命名其他名称,然后再直接将压缩包文件解压到指定文件夹,达到被替换的效果)。4.最后,原创 2021-02-09 15:44:05 · 4336 阅读 · 3 评论 -
C#重启程序
很多时候,我们有这样的场景,需要让程序自动重启,有很多种方法,比如用微软自带提供的方法,或者自己开辟新的线程重新调用。下面简单介绍两种方法。方法一、使用方法Application.Restart()public static void Restart(){ Application.Restart();}当方法一使用的时候,经常报错或者启动不了的话(我就是碰到这种情况),我们可以使用第二种方法。方法二、public static void Restart(){ //开启转载 2021-02-03 14:12:57 · 654 阅读 · 0 评论 -
C#设置滚动条定时滚动
1.拖一个timerl控件:2.拖一个panel控件用于覆盖滚动条(起到隐藏滚动条的效果):3.再拖一个skinWaterTextBox控件到panel上面(演示用),名称为skinWaterTextBox1,text属性添加内容:4.窗体加载事件中添加启动定时器代码:// 项目简介滚动this.timer1.Interval = 1000;this.timer1.Tick += timer1_Tick;//到时间的时候执行事件; this.timer1.Start();5.继续添加原创 2021-01-28 14:31:11 · 2126 阅读 · 0 评论 -
C#字符串拆分单个字符并保存到数组
string str = "256";// 将数字转为字符数组char[] arr = str.ToCharArray();// [2,5,6]原创 2021-01-27 14:11:18 · 4723 阅读 · 0 评论 -
C#DataGridView使用线程定时循环滚动数据
1.定义线程// skinDataGridView1数据滚动线程Thread thrRefresherListView;// 锁bool listViewFlag = false;2.启动线程// 保证只开启一次if (!listViewFlag){ // 添加完数据后,开启skinDataGridView1滚动数据线程 thrRefresherListView = new Thread(new ThreadStart(listviewTimer)); thrRefresherLis原创 2021-01-14 15:20:27 · 2271 阅读 · 7 评论 -
C#listView相关记录
listview 列随lietview大小自动平分适应listview大小private void listview_SizeChanged(object sender, EventArgs e){ int _Count = listview.Columns.Count; int _Width = listview.Width; foreach (ColumnHeader ch in listview.Columns) { ch.Width = _Widt原创 2021-01-14 09:21:24 · 686 阅读 · 0 评论 -
C#设置柱形图每根柱子的颜色和宽度
图例:// 年龄分布图表委托public delegate void ChartDelegateAgeDistribution(Chart _Chart, List<AgeDistribution> list);// 年龄分布chart2.BeginInvoke(new ChartDelegateAgeDistribution(ChartAgeDistributionMethod),chart2, peopleStatictics.ageDistributionList);///原创 2021-01-08 11:10:29 · 2714 阅读 · 0 评论 -
C#类似仪表盘数据显示的制作
项目demo下载点我1.效果图:2.思路:底层其实是一个环形图chart控件,设置环形图内径大小。整个环形图只有三个模块,其中一个模块设置与背景颜色相同,所以成了有小半个缺口的圆环假象。剩下的两个模块一个用于显示数据进度,另一个给一个默认颜色。最后三个模块组合就成了仪表盘了。。3.核心代码:/// <summary>/// </summary>/// <param name="_Chart"></param>/// <param n原创 2021-01-06 15:52:07 · 3095 阅读 · 3 评论 -
C#设置环形图中空的内径
原创 2021-01-05 16:49:39 · 317 阅读 · 0 评论 -
C#图表中标签过多导致互相覆盖显示不全问题解决
修改之前图例:解决方法:找到图表属性-ChartAreas图表区-Area3DStyle1.2.修改之后图例:原创 2021-01-04 17:04:01 · 647 阅读 · 0 评论 -
C#使用Linq对xml文件进行增删改查
using log4net;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Xml.Linq;/// <summary>/// 配置文件修改工具公共方法/// </summary>namespace 智慧工地大屏.util{ public class ConfigXmlUtil { priva原创 2020-12-30 10:23:58 · 338 阅读 · 0 评论 -
C#图表中鼠标移动并显示数据
效果图:1.首先在页面上添加一个label控件并 默认隐藏:2.给该图表添加MouseMove鼠标移动事件:/// <summary>/// 鼠标经过时发生/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void chart1_MouseMove(object sender, MouseEventA原创 2020-12-30 10:08:11 · 2442 阅读 · 4 评论 -
C#获取某个对象的属性值
/// <summary>/// 获取某个对象中的属性值/// </summary>/// <param name="info"></param>/// <param name="field"></param>/// <returns></returns>public static object GetPropertyValue(object info, string field){ if原创 2020-12-30 09:44:49 · 2750 阅读 · 0 评论 -
C#窗体做自适应方法
方法如下:using log4net;using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Windows.Forms;namespace 智慧工地大屏.util{ public class AutoSizeFormClass { private static ILog logger = LogManager.GetLogg原创 2020-12-10 17:12:34 · 1766 阅读 · 0 评论 -
C#点击事件缩放图片
// skinPictureBox16是否放大public bool fullscreenSkinPictureBox16 = false; /// <summary> /// skinPictureBox16点击事件:点击后图片放大或缩小 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void原创 2020-11-18 13:59:53 · 867 阅读 · 0 评论 -
C#中ListView第一列显示图片
图示:创建一个ListView :1.拖动ImageList控件到窗体中:2.写代码/* * 实时预警列表 */public void ViewDelegateMethodRealTimeWarn(ListView _View, List<RealTimeWarn> realTimeWarns){ // 设置列表允许换行 _View.LabelWrap = true; if (realTimeWarns != null && rea原创 2020-11-18 10:33:54 · 1451 阅读 · 0 评论 -
C#遍历ListView所有项、修改指定项
// 遍历ListView所有项foreach (var item in SysContent.videoMonitorList){ if (int.Parse(item.Key) == listView3.SelectedItems[0].Index) { ...... }}// 修改指定项的ForeColorlistView3.Items.Cast<ListViewItem>().ToArray<ListViewItem>()[int.原创 2020-11-13 17:54:25 · 2640 阅读 · 4 评论