-
C#演示如何正确关闭程序
C#演示如何正确关闭程序,这是一个Wpf窗体实例,演示WPF窗口如何才是正确的关闭方法。
其实下边这句话最重要:
正确关闭程序的方法:App.Current.Shutdown();
具体的代码写法如下:
//文件名称:Window1.xaml.cs
private void button1_Click(object sender, RoutedEventArgs e)
{//正确关闭程序
App.Current.Shutdown();
}
- 2023-04-28 12:25:02下载
- 积分: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# 利用聚合函数MIN求销售额、利润最少的商品
C# 利用聚合函数MIN求销售额、利润最少的商品,具体来说是查询利润最少的商品信息,查询销售额最少的商品信息,查询结果将绑定显示于DataGridView数据网格控件中。
下面以查询销售额最少的商品信息为例,帖出具体的代码实现:
private DataTable GetMoney()
{
string P_Str_ConnectionStr = string.Format(//创建数据库连接字符串
@"server=WIN-GI7E47AND9RLS;database=db_TomeTwo;uid=sa;pwd=");
string P_Str_SqlStr = string.Format(//创建SQL查询字符串
"SELECT * FROM tb_Ware WHERE 销价 IN(SELECT MIN(销价) FROM tb_Ware)");
SqlDataAdapter P_SqlDataAdapter = new SqlDataAdapter(//创建数据适配器
P_Str_SqlStr, P_Str_ConnectionStr);
DataTable P_dt = new DataTable();//创建数据表
P_SqlDataAdapter.Fill(P_dt);//填充数据表
return P_dt;//返回数据表
}
其它部分的查询请下载本源码包。
- 2022-07-25 21:11:39下载
- 积分:1
-
C# WPF 功能打印的示例
C# WPF 功能打印的示例,加载内容后,可在本程序中直接打印出XAML文档。
private void button2_Click(object sender, RoutedEventArgs e)
{//打印文件
PrintDialog MyDialog = new PrintDialog();
if ((MyDialog.ShowDialog() == true))
{
MyDialog.PrintVisual(this.richTextBox1 as Visual, "我的XAML打印文档");
}
}
private void button3_Click(object sender, RoutedEventArgs e)
{//保存文件
string MyFileName = "MyFile.XAML";
TextRange MyTextRange;
System.IO.FileStream MyStream;
MyTextRange = new TextRange(this.richTextBox1.Document.ContentStart, this.richTextBox1.Document.ContentEnd);
MyStream = new System.IO.FileStream(MyFileName, System.IO.FileMode.Create);
MyTextRange.Save(MyStream, DataFormats.XamlPackage);
MyStream.Close();
}
- 2022-01-23 10:57:00下载
- 积分:1
-
C#多个读写文本文件的方法含示例
C#多个读写文本文件的方法含示例,比如"以文本行为单位写文本文件、以文本行为单位读文本文件、一次性向文本文件写入数据、一次性从文本文件读取数据、一次性向文本文件追加数据。
- 2022-05-12 17:08:46下载
- 积分:1
-
C#开发的SQL数据库存储过程生成器附源码
C#开发的SQL数据库存储过程生成器附源码,是由VS开发的一款代码生成器,名字叫做“SocanCode”,程序作者:廖勇军。主要是生成数据库的存储过程,打开窗口后,在左侧的窗格可新建存储过程,按照程序的导航一步步建立存储过程,最后生成存储过程代码。
SocanCode存储代码生成器,目前已经全部开源,除了生成存储过程代码外,这个程序还有一些其它的小工具,比如HTML转JavaScript、正则表达式生成等。
- 2023-06-01 08:10:03下载
- 积分:1
-
visual C# 基本的用户名密码登录判断示例
一个else if结构的用户登录判断模块,这个是基于C#版的,代码超简单,没有使用数据库,只是交待出了完整的判断过程,后续使用数据库时,原理基本差不多,只不过这里的用户名和密码是从数据库中读取出来,下面是基本的判断过程:
if (textBox1.Text == "")//判断是否输入的用户名
{
MessageBox.Show("用户名不能为空!", "警告", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
if (textBox1.Text.ToLower() == "tsoft" && textBox2.Text == "111")//判断用户名和密码是否正确
{
MessageBox.Show("登录成功!", "成功", MessageBoxButtons.OK, MessageBoxIcon.Warning);
}
else
{
MessageBox.Show("用户名或密码错误!", "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}结合数据库实现时,先建立数据库连接,读取出用户名和密码赋值到变量中,然后使用上述代码即可判断。
- 2022-07-21 04:48:54下载
- 积分:1
-
C#使用SqlDataAdapter对象的Fill方法填充DataSet
C#使用SqlDataAdapter对象的Fill方法填充DataSet,具体是调用DataSet的Copy方法复制DataSet中的内容,完成填充的功能:
private void Form1_Load(object sender, EventArgs e)
{
//实例化SqlConnection变量conn,连接数据库
conn = new SqlConnection("server=.;database=db_14;uid=sa;pwd=");
//创建一个SqlCommand对象
SqlCommand cmd = new SqlCommand("select * from tb_test", conn);
SqlDataAdapter sda = new SqlDataAdapter();//创建一个SqlDataAdapter对象
//设置SqlDataAdapter对象的SelectCommand属性,设置执行的SQL语句
sda.SelectCommand = cmd;
ds = new DataSet(); //实例化DataSet
sda.Fill(ds, "test");//使用SqlDataAdapter对象的Fill方法填充DataSet
dataGridView1.DataSource = ds.Tables[0];//设置dataGridView1的数据源
}
private void button1_Click(object sender, EventArgs e)
{
DataSet ds1 = ds.Copy();//调用DataSet的Copy方法复制ds中的内容
dataGridView2.DataSource = ds1.Tables[0];//将ds1作为dataGridView2的数据源
}
- 2022-11-04 09:50:03下载
- 积分:1
-
C# 在密钥容器中创建非对称密钥
在密钥容器中创建非对称密钥、在密钥容器中删除非对称密钥、在密钥容器中获取非对称密钥,具体的实现代码,请参考如下代码:
private void button1_Click(object sender, EventArgs e)
{//在密钥容器中创建非对称密钥
CspParameters MyCSP = new CspParameters();
MyCSP.KeyContainerName = this.textBox2.Text;
RSACryptoServiceProvider MyRSA = new RSACryptoServiceProvider(MyCSP);
this.textBox1.Text=MyRSA.ToXmlString(true);
}
private void button2_Click(object sender, EventArgs e)
{//在密钥容器中删除非对称密钥
CspParameters MyCSP = new CspParameters();
MyCSP.KeyContainerName = this.textBox2.Text;
RSACryptoServiceProvider MyRSA = new RSACryptoServiceProvider(MyCSP);
MyRSA.PersistKeyInCsp = false;
MyRSA.Clear();
try
{
this.textBox1.Text = MyRSA.ToXmlString(true);
}
catch
{
this.textBox1.Text = "已经删除非对称密钥!";
}
}
private void button3_Click(object sender, EventArgs e)
{//在密钥容器中获取非对称密钥
CspParameters MyCSP = new CspParameters();
MyCSP.KeyContainerName = this.textB
- 2022-02-06 13:18:17下载
- 积分:1
-
帝国时代2游戏源码
帝国时代2游戏源码,完整版本编译通过。
- 2022-02-09 11:03:03下载
- 积分:1