转载请注明出处:https://blog.csdn.net/Leytton/article/details/88891616
本文主要记录项目中经常需要查阅的C#代码片段。

0x01 子线程操作UI

以此处以label控件为例,其他控件同理。

label_控件.Invoke(new EventHandler(delegate{label_控件.Text = "更改控件属性";
}));

0x02 保存与读取二进制序列化文件

1、保存

string ConfigPath=AppDomain.CurrentDomain.BaseDirectory+"/config.bin";
AppConfig appConfig=new AppConfig();//自定义类
using (FileStream fs = new FileStream(ConfigPath, FileMode.Create))
{BinaryFormatter bf = new BinaryFormatter();bf.Serialize(fs, appConfig);fs.Close();}

2、读取


if (System.IO.File.Exists(ConfigPath)) {try{using (FileStream fs = new FileStream(ConfigPath, FileMode.Open)){BinaryFormatter bf = new BinaryFormatter();appConfig = (AppConfig)bf.Deserialize(fs);fs.Close();}}catch (Exception ex){MessageBox.Show("配置文件读取错误,将用默认配置!", "错误");}
}

0x03 开机自启动

1、设置

//MessageBox.Show("设置开机自启动,需要修改注册表", "提示");string path = Application.ExecutablePath;RegistryKey rk = Registry.CurrentUser; //添加到 当前登陆用户的 注册表启动项try{//SetValue:存储值的名称RegistryKey rk2 = rk.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run");rk2.SetValue("ProcessWatcher", path);rk2.Close();rk.Close();MessageBox.Show("设置开机自启动成功");}catch (Exception ex){MessageBox.Show(ex.Message.ToString(), "提 示", MessageBoxButtons.OK, MessageBoxIcon.Error);}

注:程序运行路径不能包含特殊符号,否则路径会出现偏差导致无法开机启动的问题。
由于包含#符号,导致路径中的\,变成了/,这是不正常的。如下图:

2、取消

string path = Application.ExecutablePath;
RegistryKey rk = Registry.CurrentUser;
try
{RegistryKey rk2 = rk.CreateSubKey(@"Software\Microsoft\Windows\CurrentVersion\Run");rk2.DeleteValue("ProcessWatcher", false);rk2.Close();rk.Close(); MessageBox.Show("已取消开机自启动");
}
catch (Exception ex)
{MessageBox.Show(ex.Message.ToString(), "提 示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}

C#常用经典代码片段相关推荐

  1. java经典代码片段

    java经典代码片段 写这篇也是用于学习 package com.common.file; import java.io.File; import java.io.FileInputStream; i ...

  2. C语言成绩abc,C语言常用经典代码:求三角形的面积、把百分制成绩转换为ABC等级制、其两个自然数的最大公约数和最小公倍数...

    C语言 经典常用代码 C语言常用经典代码 求三角形的面积. 把百分制成绩转换为ABC等级制. 其两个自然数的最大公约数和最小公倍数. 求输入n个数的平均值. 求一个数各个位上的数字之和. 求n个数的阶 ...

  3. JQuery常用的代码片段

    2019独角兽企业重金招聘Python工程师标准>>> JQuery常用的代码片段 JQuery在当前众多网站开发中都有用到.他简易的操作以及对各个浏览器的兼容性,被广大的开发者一致 ...

  4. android 弹窗代码大全,36个Android开发常用经典代码大全

    //36个Android开发常用代码片段 //拨打电话 public static void call(Context context, String phoneNumber) { context.s ...

  5. 提效小技巧——记录那些不常用的代码片段

      不知道大家有没有这样的经历? 某种代码操作,之前很少写,突然要用了但想不起来怎么写了:某个工具库很久没用了,现在想用了连库名都忘记了:某个命令行,曾经用过,现在已经忘记它有哪些参数了-- 这样的经 ...

  6. VBS脚本常用经典代码收集

    在网上查找资料的时候发现好多经典的vbs代码,收集起来也为了以后学习. VBS脚本用途很多: 1. 计算 2. 处理文件和文件夹 3. 管理Windows 4. 处理Word, Excel, Powe ...

  7. 常用CSS代码片段常见css bug

    1.禁止文字被选中 1 .unselectable{ 2 -moz-user-select:-moz-none; 3 -khtml-user-select:none; 4 -webkit-user-s ...

  8. Linux上类似vbs脚本,VBS脚本常用经典代码收集

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 在网上查找资料的时候发现好多经典的vbs代码,收集起来也为了以后学习. VBS播放音乐 Dim wmp Set wmp = CreateObject(&q ...

  9. WebApp 开发中常用的代码片段

    其实这里面的多数都是 iOS 上面的代码.其他平台的就没有去验证了. HTML, 从HTML文档的开始到结束排列: <meta name="viewport" content ...

最新文章

  1. 基于python的手写数字识别knn_KNN分类算法实现手写数字识别
  2. Bootstrap-table学习笔记(一)
  3. 【Redis学习笔记】2018-07-11 Redis指令学习5
  4. C#Excel文件读取问题及解决办法
  5. Activity的启动过程(源码API27)
  6. Career Essentials from Career Service
  7. 继续教育统考计算机和英语难度怎么样,网络教育英语统考90分的难度怎么样
  8. 美团 iOS 工程 zsource 命令背后的那些事儿
  9. Python reload 函数 - Python零基础入门教程
  10. 纱窗.20190512
  11. 做了一个画f(x,y)=0函数图像的算法,果断codeplex之
  12. 指向 类成员函数 指针的用法
  13. 循序渐进之Spring AOP(1) - 原理
  14. Eduline在线教育系统源码 带完整修复后台
  15. My Sunshine
  16. 一个简易邮件群发软件设计与实现
  17. 【Day5.1】在坑人的免税店King Power蹭午餐
  18. 基于TTP223金属触摸开关电路模块原理图和PCB工程文件
  19. linux vim编辑器命令,Linux之VIM编辑器命令
  20. 201571030135/201571030137《小学四则运算练习软件》结对项目报告

热门文章

  1. java上传ftp 0kb_java FTPClient 上传文件 0kb 问题
  2. MyBatis - 日志 - 一二级缓存
  3. html如何添加m3u8插件,推荐一款某酷网页视频播放+获取m3u8链接的浏览器插件!...
  4. 青春的样子,不止步于wifi
  5. 我的算法不可能这么简单—珂朵莉树
  6. android ormlite框架,ORMLite框架 的使用方法—给你的数据库操作插上翅膀
  7. 在javascript中使用el表达式(jsp中的javascript中支持写el表达式,毋庸置疑,单独的js文件中不支持写el表达式,别钻牛角尖)
  8. 写在受洗之前:我为什么成为基督徒
  9. Pixhawk在MP上的故障保护
  10. niushop单商户V5.1旗舰版开源商城系统uniapp中的商业插件怎么安装