-
改善C#的157个建议编写高质量代码_源代码合集
改善C#的157个建议编写高质量代码_源代码合集,这些实例均采用4.0框架,请运行使用Release模式;部分TIP由于简单未给出源码;这157个建议的源码涉及到语言篇、集合和LINQ、泛型、委托和事件、资源管理和序列化、异常与自定义异常、异步、多线程、任务和并行、架构篇成员设计、类型设计、安全性设计、编码规范及习惯、代码整洁、规范开发行为等,每类细分一共形成了157条建议,相信这些建议对于向高深进阶的C#开发者来说,是难得的建议。
- 2022-07-10 03:10:19下载
- 积分:1
-
C# 实现Email邮件提醒器功能
C# 实现Email邮件提醒器功能,主程序分为设置窗口、提醒窗口和托盘窗口,运行后在Windows托盘处隐藏,右键托盘图标会调用出设置窗口,如截图所示。通过设置窗口输入相关监测的Email邮件参数,比如邮件服务器地址、端口地址、用户名、密码和检测邮件的时间间隔等。如果设置正确,则目标email中若接收到新邮件,会自动弹出提醒窗口。
- 2022-10-14 19:50:02下载
- 积分:1
-
STM32F1的SPWM逆变器源码
#include "SPWM.h"
#include "led.h"
#include "usart.h"
u16 TimerPeriod = 7200;
u16 DutyFactor = 50;
void TIM_Int_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA | RCC_APB2Periph_GPIOB, ENABLE);
RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM4 | RCC_APB1Periph_TIM3,ENABLE); //时钟使能
/* GPIOA配置:通道PA.6和PA.7作为输出引脚*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_6 | GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF_PP;
&nbs
- 2022-07-26 17:50:34下载
- 积分:1
-
一个简单的C# 多线程实例
一个简单的C# 多线程实例,创建多线程的简单实例,创建线程一和线程二,两者单独完成指定侨任务,创建多线程主要是使用C#中内置的方法new Thread()来实现,然后让每个线程执行一个for循环,来测试线程运行的效果。创建线程和运行线程的代码,可参考如下代码:
Thread thread1 = new Thread(new ThreadStart( Count));
thread1.Name="线程一";
Thread thread2 = new Thread(new ThreadStart( Count));
thread2.Name="线程二";
thread1.Start();
thread2.Start();
- 2022-08-18 15:51:20下载
- 积分:1
-
C# WPF模拟复制、剪切、全选、粘贴文字
C# WPF模拟在窗口中复制、剪切、全癣粘贴文字,测试时,请先在其它窗口中复制一段文字,然后打开本窗口,在本窗口中点击“粘贴”,文字即可显示在文本框中,上面依次是复制、剪切、全选和粘贴等功能,对应操作即可。
- 2022-03-21 04:15:48下载
- 积分:1
-
C# WPF 制作一个悬停变化的按钮
C# WPF 技术制作的动态按钮,一个将鼠标放置在按钮上产生样式动画效果的响应式按钮,源代码基于VS2010,当鼠标悬停于按钮时,按钮的背景色具备渐变动画效果,十分醒目,很好的用户的操作形成交互效果,借此源码你可了解一些WPF编程的基础技巧。
- 2022-01-25 19:17:32下载
- 积分:1
-
C# 带农历 万年历 日历
Visual C#实现显示农历、星期、天干地支等信息的万年历,在这个万年历中,你可以学习到很多关于日期时间的获娶判断等操作:
int GetMonth (DateTime time)获取指定公历日期的农历月份
int GetDayOfMonth (DateTime time) 获取指定公历日期的农历天数,这个值根据大月或者小月取值是1到30或者1到29,
int GetSexagenaryYear (DateTime time) 获取指定公历日期的农历年份的干支纪年,从1到60,分别是甲子、乙丑、丙寅、….癸亥, 比如戊戌变法、辛亥革命就是按这个来命名的。当然算八字也少不了这个。
int GetTerrestrialBranch (int sexagenaryYear) ) 获取一个干支的地支,, 从1到12, 表示子、丑、寅、…今年是狗年
通过自定义函数,响应用户在日历上的操作,显示相关的日历提示信息:
if (e.Button == MouseButtons.Left)
{
Point myPosittion = Control.MousePosition;//获取当前鼠标的屏幕坐标
myPosittion.Offset(intX, intY);//重载当前鼠标的位置
this.DesktopLocation = myPosittion;//设置当前窗体在屏幕上的位置
}
- 2023-08-26 22:50:04下载
- 积分:1
-
C#读取文件内容显示在DataGridView表格中
Visual C#在DataGridView单元格中显示文本文件的内容,可以理解为,从外部读取文件内容,将其显示在DataGridView
单元格中,可以看出,本代码中使用了DataTable对象、OleDb.OleDbDataAdapter对象,外部文件的格式暂定为txt,其它格式需要相关解析组件支持,实现本功能并不难,以下几行代码就可大致实现:
string MyPath = System.IO.Directory.GetCurrentDirectory();
string MyConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+MyPath+";Extended Properties="text;HDR=yes;FMT=delimited";";
string MySQL = "select * from 季度订单.txt";
DataTable MyTable = new DataTable();
System.Data.OleDb.OleDbDataAdapter MyAdapter = new System.Data.OleDb.OleDbDataAdapter(MySQL, MyConnectionString);
MyAdapter.Fill(MyTable);
this.dataGridView1.DataSource = MyTable;
运行界面效果请参见下图,完整源码请在本页下载。
- 2022-03-20 07:42:37下载
- 积分:1
-
C# 确定字符串末尾是否匹配指定子串
C# 确定字符串末尾是否匹配指定子串,本字符串查询实例具体到只匹配字符串开头和结尾是否有指定的字符串,下面是具体的查询代码编写方法:
private void button1_Click(object sender, EventArgs e)
{//确定字符串开头是否匹配指定子串
string MyFullInfo = "中华人民共和国";
string MyPartInfo="中华";
if(MyFullInfo.StartsWith(MyPartInfo))
MessageBox.Show(MyFullInfo + " 的开头是 " + MyPartInfo, "信息提示", MessageBoxButtons.OK);
else
MessageBox.Show(MyFullInfo + " 的开头不是 " + MyPartInfo, "信息提示", MessageBoxButtons.OK);
}
private void button2_Click(object sender, EventArgs e)
{//确定字符串末尾是否匹配指定子串
string MyFullInfo = "中华人民共和国";
string MyPartInfo = "共和国";
if (MyFullInfo.EndsWith(MyPartInfo))
MessageBox.Show(MyFullInfo + " 的末尾是 " + MyPartInfo, "信息提示", MessageBoxButtons.OK);
else
MessageBox.Show(MyFullInfo + " 的末尾不是 " + MyPartInfo, "信息提示", MessageBoxButtons.OK);
}
- 2022-02-09 23:32:04下载
- 积分:1
-
C# 查询订购产品ID为51的客户信息
C# 查询订购产品ID为51的客户信息,需要连接数据库来测试,相关代码分享如下:
//查询订购产品ID为51的客户信息
SqlConnection MyConnection = new SqlConnection(@"Data Source =luobin-PCSQLEXPRESS;Initial Catalog=Northwind;Integrated Security=True");
MyConnection.Open();
DataSet MyDataSet = new DataSet("CustomerOrdersDetails");
SqlDataAdapter MyCustomerAdapter = new SqlDataAdapter("SELECT * FROM Customers", MyConnection);
MyCustomerAdapter.Fill(MyDataSet, "Customers");
DataTable MyTable = new DataTable();
MyCustomerAdapter.Fill(MyTable);
SqlDataAdapter MyOrderAdapter = new SqlDataAdapter("SELECT * FROM Orders", MyConnection);
MyOrderAdapter.Fill(MyDataSet, "Orders");
SqlDataAdapter MyDetailAdapter = new SqlDataAdapter("SELECT * FROM [Order Details]", MyConnection);
MyDetailAdapter.Fill(MyDataSet, "OrderDetails");
MyConnection.Close();
MyDataSet.Relations.Add("CustOrders",MyDataSet.Tables["Customers"].Columns["CustomerID"],MyDataSet.Tables["Orders"].Columns["CustomerID"]).Nested = true;
MyDataSet.Relations.Add(
- 2023-04-28 12:35:03下载
- 积分:1