-
C# LoadAsync()异步加载并播放声音的例子
C# 异步加载并播放声音文件的实例,异步加载主要是使用了LoadAsync(),使用IsLoadCompleted判断是否加载完成,加载完成则使用SoundPlayer()播放wav文件。在这个过程中,可能会有异常,因此这里添加了异常处理模块,当然了这是每个C#程序几乎都不可缺少的部分了,详情请下载本源码。
异步加载有很多好处,可节省系统资源,使软件执行速度更快,C#编程者,建议学习这项技巧哦。
- 2023-02-10 15:50:03下载
- 积分:1
-
C# 复制和删除数据表指定行数据
C# 复制和删除数据表指定行数据,主要是完成了两项功能,删除目标数据表的选择行的整行数据,将源数据表的选择行数据复制到目标数据表,这两个功能的实现思路和代码演示如下:
private void Form1_Load(object sender, EventArgs e)
{
MySourceTable = new DataTable();
var MyConnectString=@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=F:Northwind.mdb";
var MySQL = "Select * From 客户";
var MyAdapter=new OleDbDataAdapter(MySQL,MyConnectString);
MyAdapter.Fill(MySourceTable);
this.DataGridView1.DataSource = MySourceTable;
MyTargetTable = MySourceTable.Clone();
this.DataGridView2.DataSource = MyTargetTable;
}
private void Button1_Click(object sender, EventArgs e)
{//将源数据表的选择行数据复制到目标数据表
var MyID= "客户ID=;
MyID = MyID + this.DataGridView1.CurrentRow.Cells[0].Value.ToString() +";
MyTargetTable.ImportRow(this.MySourceTable.Select(MyID)[0]);
}
private void Button2_Click(object sender, EventArgs e)
{//删除目标数据表的选择行的整行数据
var MyID = "客户ID=;
MyID = MyID +this.DataGridView2.CurrentRow.Cells[0].Value.ToString
- 2022-04-17 22:21:45下载
- 积分:1
-
C#调用存储过程显示客户的订单金额
Visual C# 通过调用存储过程显示客户的订单金额,获取客户的订单总额(获取存储过程参数的返回值):
private void button1_Click(object sender, EventArgs e)
{//获取客户的订单总额(获取存储过程参数的返回值)
DataClasses1DataContext MyDataContext = new DataClasses1DataContext();
string MyCustomer = "alfki";
decimal? MyAmount = 0;
MyDataContext.CustOrderTotal(MyCustomer, ref MyAmount);
MessageBox.Show(MyCustomer+"客户的订单金额是:"+MyAmount.ToString(),"信息提示",MessageBoxButtons.OK);
}
- 2022-10-21 01:10:03下载
- 积分:1
-
C# 通用权限管理框架源码 ERP OA 快速开发框架
1、菜单导航管理2、操作按钮3、角色管理4、部门管理5、用户管理(用户权限)6、用户组管理(设置成员,用户组权限)7、系统配置(动态配置系统参数)8、附加属性(自定义属性)9、系统日志(异常记录)10、数据库备份/还原11、资源管理,(动态数据库)12、个人信息(基本信息,附加信息,用户角色,拥有权限)13、首页快捷14、数据回收站(业务功能删除过数据,全部保留在回收站)15、系统个性化设置(切换菜单导航)
- 2022-03-11 07:50:58下载
- 积分:1
-
C# 自定义组件的小例子及源代码
C# 自定义组件的小例子及源代码,包含自定义的UserControl组件和应用该组件的MainFrame主窗体程序,需要在工具箱里右键-》选项-》.Net组件注册一下就能用了。主要通过将xml绑定到TreeView控件完成菜单导航功能,可以在同一窗体中导航不同panel,也可以导航多窗口,需要添加新菜单,只需配置Menu.xml,Menu.xml中显示treeView树形菜单中的各节点数据,将除菜单外所有panel设置为不显示。
- 2022-11-10 22:05:03下载
- 积分:1
-
C#保存和显示XML图像文件
C#保存和显示XML图像文件的源码,本程序实现的功能主要是打开一个图像,格式为JPeg, Gif, Bmp, etc等,然后可保存XML图像文件,还可显示显示XML图像文件,每一步操作都会以MessageBox.Show的方式弹出对话框提示。
- 2023-06-27 15:40: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
-
C# 写入并读取内存流
C# 写入并读取内存流,演示一些基本的内存流操作方法,编写以下代码可实现这些功能:
byte[] BContent = Encoding.Default.GetBytes(textBox1.Text);
MemoryStream MStream = new MemoryStream(100);
MStream.Write(BContent, 0, BContent.Length);
richTextBox1.Text = "分配给该流的字节数:" + MStream.Capacity.ToString() + "
流长度:"
+ MStream.Length.ToString() + "
流的当前位置:" + MStream.Position.ToString();
MStream.Seek(0, SeekOrigin.Begin);
byte[] byteArray = new byte[MStream.Length];
int count = MStream.Read(byteArray,0,(int)MStream.Length-1);
while (count < MStream.Length)
{
byteArray[count++] = Convert.ToByte(MStream.ReadByte());
}
char[] charArray = new char[Encoding.Default.GetCharCount(byteArray, 0, count)];
Encoding.Default.GetChars(byteArray, 0, count, charArray, 0);
for (int i = 0; i < charArray.Length; i++)
{
richTextBox2.Text += charArray[i].ToString();
}
- 2022-03-11 09:55:00下载
- 积分:1
-
C# 3DTools.dll WPF 3D建模、透视、动画效果演示实例
这是一个使用C# 3DTools.dll WPF技术实现的 3D建模、透视、动画效果演示实例,本源码包括了以下演示范围:使用ScreenSpaceLines3D绘制的3D坐标系、3D立方体、球、不同光源的折射、不同材质的视觉效果、2D房子、3D房子,用MatrixCamera模拟透视相机等功能,关于透视的若干参数设置和实现原理,请参考PerspectiveByMatrixCamera.xaml.cs,在此文件中包括了正射投影的若干参数, 计算M坐标系下的三个轴单位向量 Mx,My,Mz,计算平移矩阵的dx,dy,dz,计算正射投影矩阵的Sx,Sy,Sz,dz等。
创建相机和光源、坐标系请参考Sphere.xaml.cs文件,如果line3D非空,则需要绘制构建的三角网,计算出来的点,然后加入到MeshGeometry3D的Positions属性。
- 2023-08-07 10:10:03下载
- 积分: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