常用功能代码收集
=========================================================================================
正则获取博客园文章标题
/<div class="entrylistPosttitle".*<\/a><\/div>/gm
使用方法:
在博客园文章列表页面,在html内容中获取文章标题及链接
=========================================================================================
正则检查IP地址格式
检查IP地址格式是否正确:
Regex.IsMatch(ip, @"^((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?)$"); //方式一 IPAddress address; if (!System.Net.IPAddress.TryParse(txtIP.Text, out address)) //方式二 throw new Exception("IP地址格式不正确");
=========================================================================================
只允许文本框中输入数字:
private void txtNum_KeyPress(object sender, KeyPressEventArgs e) { if (e.KeyChar != 8 && !Char.IsDigit(e.KeyChar)) { e.Handled = true; } }
=========================================================================================
窗口的创建和销毁事件
窗口查询的创建完成和销毁完成的系统事件,可以做一些初始化和释放资源等事情
protected override void OnHandleCreated(EventArgs e) { } protected override void OnHandleDestroyed(EventArgs e) { }
还有对应的创建和销毁事件:
protected override void CreateHandle() { base.CreateHandle(); } protected override void DestroyHandle() { base.DestroyHandle(); }
=========================================================================================
禁用窗口的关闭按钮
#region 窗口句柄重写,禁用窗体的关闭按钮 private const int CP_NOCLOSE_BUTTON = 0x200; protected override CreateParams CreateParams { get { CreateParams myCp = base.CreateParams; myCp.ClassStyle = myCp.ClassStyle | CP_NOCLOSE_BUTTON; return myCp; } } #endregion
=========================================================================================
获取本机MAC地址和IP地址
方法:

#region 获取本机MAC地址和IP地址的方法 /// <summary> /// 获取本机MAC地址方法 /// </summary> /// <returns></returns> private string GetMacAddress() { try { //获取网卡硬件地址,需要添加引用:System.Management.dll string mac = ""; System.Management.ManagementClass mc = new System.Management.ManagementClass("Win32_NetworkAdapterConfiguration"); System.Management.ManagementObjectCollection moc = mc.GetInstances(); foreach (System.Management.ManagementObject mo in moc) { if ((bool)mo["IPEnabled"] == true) { mac = mo["MacAddress"].ToString(); var ipAddress = mo["IPAddress"];//包括IPv4和IPv6地址 break; } } moc = null; mc = null; return mac.Replace(":", "-"); } catch { return "unknow"; } } #endregion
=========================================================================================
获取系统的图片、视频等文件夹路径
获取当前系统用户使用的图片、视频等文件夹路径
string pathp = $@"{Environment.GetFolderPath(Environment.SpecialFolder.MyPictures)}\";
string pathv = $@"{Environment.GetFolderPath(Environment.SpecialFolder.MyVideos)}\wmv\"
string pathv = $@"{Environment.GetFolderPath(Environment.SpecialFolder.MyVideos)}\mp4\"
//计算机名
string computerName = System.Net.Dns.GetHostName();
=========================================================================================
获取当前磁盘信息:
DriveInfo D = DriveInfo.GetDrives().Where(a => a.Name == path.Substring(0, 3).ToUpper()).FirstOrDefault();
Int64 i = D.TotalFreeSpace;
=========================================================================================
把时间写到图片上:

/// <summary> /// 把时间写到图片上 /// </summary> /// <param name="img"></param> private void updateFrame(Bitmap img) { try { g = Graphics.FromImage(img); SolidBrush drawBrush = new SolidBrush(Color.Yellow); Font drawFont = new Font("Arial", 18, System.Drawing.FontStyle.Bold, GraphicsUnit.Pixel); string drawDate = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"); g.DrawString(drawDate, drawFont, drawBrush, 10, 10); } catch (Exception ex) { } finally { if (this.g != null) this.g.Dispose(); } }
=========================================================================================
WinForm和WPF程序前台线程弹出消息框
Winform程序:
private void ToastNotificationManagerCompat_OnActivated(ToastNotificationActivatedEventArgsCompat e) { if (this.InvokeRequired) { this.Invoke(new EventHandler(delegate { ToastNotificationManagerCompat_OnActivated(e); })); } else { // Obtain the arguments from the notification ToastArguments args = ToastArguments.Parse(e.Argument); // Obtain any user input (text boxes, menu selections) from the notification ValueSet userInput = e.UserInput; MessageBox.Show("Toast activated. Args: " + e.Argument); } }
WPF程序:
// Need to dispatch to UI thread if performing UI operations Application.Current.Dispatcher.Invoke(delegate { MessageBox.Show("Toast activated. Args: " + e.Argument); });
=========================================================================================
=========================================================================================
=========================================================================================
=========================================================================================
=========================================================================================
=========================================================================================
关注我】。(●'◡'●)
如果,您希望更容易地发现我的新博客,不妨点击一下绿色通道的【因为,我的写作热情也离不开您的肯定与支持,感谢您的阅读,我是【Jack_孟】!
本文来自博客园,作者:jack_Meng,转载请注明原文链接:https://www.cnblogs.com/mq0036/p/14113508.html
【免责声明】本文来自源于网络,如涉及版权或侵权问题,请及时联系我们,我们将第一时间删除或更改!
posted on 2020-12-10 12:42 jack_Meng 阅读(1115) 评论(0) 编辑 收藏 举报
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· DeepSeek “源神”启动!「GitHub 热点速览」
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
2014-12-10 系列文章--数据仓库
2014-12-10 数据立方体----维度与OLAP
2014-12-10 Oracle变量的定义、赋值及使用
2014-12-10 从如何优化SQL入手,提高数据仓库的ETL效率
2014-12-10 SELECT INTO 和 INSERT INTO SELECT 两种表复制语句详解(SQL数据库和Oracle数据库的区别)