-
C# 注册表浏览器-仿Windows
C# 注册表浏览器源码,代码中一些注册表的操作很有实用价值,比如判断node代表的注册键属于哪一个根键,去掉前头的“我的电脑”,如果不是根键,找出路径,取得注册键对象,取得节点所代表的键,取得某一键值所有子键的名称,把所有子键名加入TreeView中,编译运行后,还真挺像windows自身的注册表编辑器,通过这个程序,你可以浏览系统注册表中的各个节点、键值等信息。
- 2022-03-13 01:12:07下载
- 积分:1
-
C# WPF 文字动态旋转动画
C# WPF 文字动态旋转动画,这个是动态的,文字以动画方式旋转360度,无缝旋转,WPF制作动画效果还是挺方便的,这个例子十分简单,文字的旋转也可变通为图片的旋转。运行效果图如下示。
- 2022-11-09 17:45:04下载
- 积分:1
-
一个圆形的C# 时钟实例
一个圆形的C# 时钟实例,圆形的中心调用外部的一张唐老鸭图片,各个指针在程序打开后自动初始化,获取windows时间并初始化各指针的位置,并随时间开始走动,在拖动窗口时,指针圆盘会自动变大,实际上这是一个Bug,因为随窗体变化会让哥特和指针脱离原来的位置,造成失真,在时间初始化方面,参见以下代码。
private void timer1_Tick(object sender, System.EventArgs e)
{
MySecondHand.Transform(DateTime.Now);
MyHourHand.Transform(DateTime.Now);
MyMinuteHand.Transform(DateTime.Now);
FirstTick = true;
Invalidate();
}
更多源代码,请下载本实例,运行效果请参见运行截图。
- 2022-03-03 15:59:32下载
- 积分:1
-
C# 启动和关闭无窗体定时器
C# 启动和关闭无窗体定时器,单击窗体上对应的按钮,即可完成无窗体定时器的启动和关闭功能,核心代码为:
private void button1_Click(object sender, EventArgs e)
{//启动无窗体定时器
var MyClass = new MyThreadClass();
MyTimer = new System.Threading.Timer(MyClass.MyCallBackMethod, MyClass, 5000, 2000);
}
private void button2_Click(object sender, EventArgs e)
{//关闭无窗体定时器
MyTimer.Dispose();
}
- 2022-04-09 03:53:39下载
- 积分:1
-
C# 动态改变控件在Grid单元格中的位置
c# 动态改变控件在Grid单元格中的位置:
private void button1_Click(object sender, RoutedEventArgs e)
{//动态改变控件在Grid单元格中的位置
if (bOldPos)
{
Grid.SetRow(this.image1, 1);
Grid.SetColumn(this.image1, 2);
this.bOldPos = false;
}
else
{
Grid.SetRow(this.image1, 0);
Grid.SetColumn(this.image1, 0);
this.bOldPos = true;
}
}
- 2022-02-07 14:02:16下载
- 积分:1
-
C# 为窗体控件添加浮动信息框
C# 为窗体控件添加浮动的帮助信息框,private void Form1_Load(object sender, EventArgs e)
{//为窗体控件添加浮动的帮助信息框
//在标题栏上显示帮助按钮
this.HelpButton = true;
this.MaximizeBox = false;
this.MinimizeBox = false;
//指定显示指定控件的帮助信息
this.helpProvider1.SetShowHelp(this.textBox1, true);
//指定与指定的控件关联的帮助字符串
this.helpProvider1.SetHelpString(this.textBox1, "包括科目编码和科目名称");
this.helpProvider1.SetShowHelp(this.textBox2, true);
this.helpProvider1.SetHelpString(this.textBox2, "输入数据包括分节号");
this.helpProvider1.SetShowHelp(this.textBox3, true);
this.helpProvider1.SetHelpString(this.textBox3, "输入数据包括分节号");
this.helpProvider1.SetShowHelp(this.textBox4, true);
this.helpProvider1.SetHelpString(this.textBox4, "输入数据包括分节号");
this.helpProvider1.SetShowHelp(this.textBox5, true);
this.helpProvider1.SetHelpString(this.textBox5, "期末余额=期初余额+本期发生额");
}
- 2023-03-05 04:10:04下载
- 积分:1
-
一个C# 多线程的网页异步抓取类文件代码
一个C#编写的多线程异步抓取网页的网络爬虫控制台程序类代码,这个类实现对网页URL指定内容网页的抓取,并抓取 内容中的链接、文字内容、从HTML代码中分析出链接信息等,本类中还定义了大量的私有方法,从这些私有方法中可从HTML文本中提取出一定字数的纯文本、提取网页中一定字数的纯文本,包括链接文字、提取一定数量的链接,该链接的URL满足某正则式、提取本网页的纯文本中满足某正则式的文字等。
本代码作者:大黑。
本爬虫程序的速度如下:
10线程最快大概400个链接每分钟
6-8线程最快大概200-300个链接每分钟
2-4线程最快大概150-200个链接每分钟
单线程最快大概70-100个链接每分钟
之所以用多线程异步抓取完全是出于效率考虑,本程序多线程同步并不能带来速度的提升,只要抓取的网页不要太多重复和冗余就可以,异步并不意味着错误。
- 2023-05-03 15:55:03下载
- 积分:1
-
C# 是行提交方式插入、删除、更新数据库记录
C# 是行提交方式插入、删除、更新数据库记录,本实例小程序主要演示了以行提交方式插入数据库记录、以行提交方式修改数据库记录、以行提交方式删除数据库记录、使用带有列值的Update()方法修改记录、使用带有列值的Delete()方法删除记录、使用带有列值的Insert()方法插入记录,对应的各个功能核心代码如下:
private void button2_Click(object sender, EventArgs e)
{//以行提交方式修改数据库记录(首先以添加新数据源方式新增NorthwindDataSet)
NorthwindDataSet.ShippersRow MyRow;
MyRow = this.northwindDataSet.Shippers.FindByShipperID(1);
MyRow.Phone = "13996060872";
this.shippersTableAdapter.Update(this.northwindDataSet.Shippers);
}
private void button4_Click(object sender, EventArgs e)
{//使用带有列值的Update()方法修改记录
NorthwindDataSetTableAdapters.ShippersTableAdapter MyAdapter =
new MyForm.NorthwindDataSetTableAdapters.ShippersTableAdapter();
MyAdapter.Update("Speedy Express", "13036371686", 1, "Speedy Express", "13996060872");
this.shippersTableAdapter.Fill(this.northwindDataSet.Shippers);
}
private void button3_Click(object sender, EventArgs e)
{//以行提交方式删除数据库记录(首先以添加新数据源方式新增NorthwindDataSet)
Northwi
- 2023-02-24 10:00:04下载
- 积分:1
-
C# 根据路径使用DirectoryInfo创建文件夹
C# 根据路径创建文件夹,具体来说是使用DirectoryInfo对象的Create方法创建文件夹【目录】。如果用户未指定路径,则在程序当前目录下创建文件夹,若指定路径,则在指定的路径层级下创建目录。
在创建开始前,对用户输入的目录名或路径格式进行验证,然后判断该路径下是否存在该目录,最后创建文件夹。下面是相关的代码:
if (textBox1.Text == string.Empty)//判断输入的文件夹名称是否为空
{
MessageBox.Show("文件夹名称不能为空!");
}
else
{
DirectoryInfo dinfo = new DirectoryInfo(textBox1.Text);//实例化DirectoryInfo类对象
if (dinfo.Exists)//使用DirectoryInfo对象的Exists属性判断要创建的文件夹是否存在
{
MessageBox.Show("该文件夹已经存在");
}
else
{
dinfo.Create();//使用DirectoryInfo对象的Create方法创建文件夹
}
}
- 2023-02-21 06:20:03下载
- 积分:1
-
C# SelectionStart SelectionEnd时间段选择日历范例
C# Calendar 时间段选择日历范例,可选择时间区间,调用 了C#中的SelectionStart SelectionEnd日期函数实现的功能,这个程序演示了两种功能:
1、获取控件当前的日期和时间
textBox1.Text = monthCalendar1.TodayDate.ToString();
2、时间起始段的选择:
通过SelectionStart属性获取用户选择的起始日期
textBox2.Text = monthCalendar1.SelectionStart.ToString();
通过SelectionEnd属性获取用户选择的结束日期
textBox3.Text = monthCalendar1.SelectionEnd.ToString();
- 2022-08-15 10:37:28下载
- 积分:1