c#技巧
文章平均质量分 67
emailqjc
这个作者很懒,什么都没留下…
展开
-
ListView显示列表,双击ListView里任意一行信息,出现一个可以修改的窗口
1、建立窗体Form1,并放一ListView控件 2、 /// /// 执行SQL查询,显示到ListView中 /// private void AddData() { //由于这里只做演示,数据就手动添加了 ListViewItem newItem1 = new ListViewI原创 2009-08-15 14:13:00 · 9461 阅读 · 1 评论 -
c#如何取得事件注册的方法 收藏
这个问题来自论坛,原文为如何判断事件已经被注册过? 用反射取出事件绑定的委托实例,然后用GetInvocationList就可以得到所有注册的方法了。 代码 view plaincopy to clipboardprint?using System; using System.Collections.Generic; using System.ComponentModel;原创 2010-02-09 14:11:00 · 1211 阅读 · 0 评论 -
C#中Winform的Treeview节点"正在展开..."的效果
比较简单的做法,增加一个子节点提示.然后开线程请求真实的子节点,完毕后替换提示节点。using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using S原创 2010-02-09 14:13:00 · 1487 阅读 · 0 评论 -
System.Data.DataTable计算功能详解
System.Data.DataTable计算功能详解 收藏 using System; using System.ComponentModel; using System.Data; using System.Windows.Forms; namespace WindowsApplication1 ... { public partial class Form1原创 2010-02-09 14:26:00 · 597 阅读 · 0 评论 -
C#客户端绑定DataView和DataTable的几个技巧
http://blog.csdn.net/jinjazz/archive/2008/05/04/2387469.aspx原创 2010-02-09 14:21:00 · 972 阅读 · 0 评论 -
windows程序自动锁屏功能的实现
这个问题来自论坛提问Q:当我登录进入主界面时,在规定的时间内没有做任何操作,系统就注销(就像电脑的屏保)。 A: 其实很简单,参考一个api函数就可以了:GetLastInputInfo,以下是参考代码演示程序在你10秒内没有任何鼠标键盘活动既最小化,最小化后晃动鼠标即可复原 using System; using System.Collections.Generic; us原创 2010-02-09 14:24:00 · 891 阅读 · 0 评论 -
如何用.net Remoting实现一个客户端需要连接多个服务器端?
比如我们有下面的需求:三台电脑:A,B,C。我们在 B 和 C 上部署了同样的一个服务,电脑 A 需要根据客户端的选择,自动的切换到底是调用B的服务,还是C的服务。要实现这个需求,核心就在客户端的调用上。下面我们用一个简单的演示这个功能的代码来说明如何实现。 首先:服务器段服务器段逻辑,这是非常简单的,我们按照之前的.net编写规范,编写代码即可。熟悉.net Remoting原创 2010-02-09 15:17:00 · 2017 阅读 · 1 评论 -
在当前窗体上的指定Button的Click事件弹出新的窗体
要求如下:1 在当前窗体上的指定Button的Click事件弹出新的窗体2 新弹出窗体初始位置的左边与Button左边对齐,新窗体下边在Button的上边/下边子窗体代码: public partial class frmSub : Form { public frmSub() { InitializeCompone原创 2010-03-01 10:25:00 · 1623 阅读 · 0 评论 -
利用DataGridView增加,修改,删除数据
1、 保存DataGridView所做修改方法 /// /// 保存DataGridView所做修改 /// /// /// /// /// public bool UpdateDataGridView(string sql, SqlConnection myCon原创 2010-03-05 13:35:00 · 3173 阅读 · 0 评论 -
递归调用数据库数据填充TreeView
有一数据库结构及数据如下:CREATE TABLE [dbo].[eCBMExpense]( [ExpenseID] [varchar](100) COLLATE Chinese_PRC_CI_AS NOT NULL, [ExpenseMC] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL, [ztbz] [char](1) COLLATE C原创 2010-03-15 17:00:00 · 1036 阅读 · 0 评论 -
利用反射调用docpanel实现停靠窗体
1、新建立类库MMS.MemberMangent.UI,增加一窗体名frmMemberMangent2、将窗体frmMemberMangent改成: public partial class frmMemberMangent: WeifenLuo.WinFormsUI.DockContent 3、编译生成动态连接库MMS.MemberMangent.UI.dll4、新建一window原创 2010-01-06 10:03:00 · 1005 阅读 · 0 评论 -
c#登陆窗体制作
1、创建一窗体frmWelcome(欢迎窗体),并增加timer private void timer1_Tick(object sender, EventArgs e) { this.DialogResult = DialogResult.OK; timer1.Enabled = false; timer1.原创 2010-01-11 14:23:00 · 1760 阅读 · 0 评论 -
在DockPanel 的子窗体打开另一子窗体使其停靠在主窗体的方法
1、新建主窗体frmMain,并在其类增加一属性 public DockPanel DockPanel { get { return this.dockPanel; } } 2、增加子窗体frmSysMenu,并增加一方法 private Contr原创 2010-01-14 14:09:00 · 2329 阅读 · 0 评论 -
c#解析类 Evaluator 实现动态流程
这个叫Evaluator的类,可以实现你的功能。使用方法:Console.WriteLine("Test0: {0}", Evaluator.EvaluateToInteger("(30 + 4) * 2"));using System;using System.CodeDom;原创 2011-07-14 17:00:47 · 1615 阅读 · 0 评论 -
c# 利用委托返回控件的值
private delegate string mydelMember(); //声明委托 private string GetSearchWhere() //委托执行的方法 {原创 2011-09-13 13:36:13 · 1160 阅读 · 0 评论 -
查询数据库的数据,是个比较费时的工作,在使用线程查询的时候显示个进度条,并允许终止查询的实现
public partial class FormThradQuery : Form { public delegate void PDelegate(); public delegate void myDelegate(DataTa原创 2011-08-16 17:15:11 · 1767 阅读 · 0 评论 -
利用BackgroundWorker 实现线程查询显示进度条,并允许终止查询(模仿SQL查询)
//利用组件实现线程查询 private SqlCommand fCurCommand; private string fCommandText = string.Empty; private SqlConnection fC原创 2011-08-20 16:29:30 · 3093 阅读 · 1 评论 -
C#中Winform的Treeview节点"正在展开..."的效果
http://blog.csdn.net/jinjazz/archive/2008/05/29/2494593.aspx原创 2010-02-09 13:57:00 · 848 阅读 · 0 评论 -
取xml任意节点中某个属性值的方法
public string GetXmlNodeValue(string strXml,string strNodeName,string strValueName) { try { System.Xml.XmlDocument xmlDoc = new System.Xml.XmlDocument(); xmlDoc原创 2010-02-06 18:27:00 · 4703 阅读 · 0 评论 -
构建插件式的应用程序框架目录
http://www.cnblogs.com/guanjinke/archive/2007/03/14/675109.html转载 2009-08-19 18:05:00 · 1281 阅读 · 0 评论 -
C#实现插件式架构
1.定义插件接口,将其编译为DLLnamespace PluginInterface{ public interface IShow { string show(); }}2 .编写插件,引用上面的DLL,实现上面定义的接口,也编译为DLL//插件Anamespace PluginInterface{ public clas原创 2009-08-22 15:56:00 · 5598 阅读 · 0 评论 -
DataGridView底部添加合计行
http://blog.163.com/tianmayuchuan/blog/static/235075052009629104910143/原创 2009-09-12 11:46:00 · 3266 阅读 · 0 评论 -
关于动态创建控件,第二次赋值不能显示解决办法
动态创建控件并显示在窗体上的panel上 Label[] lb; TextBox[] txtInput; lb = null; txtInput = null; lb = new Label[ds.Tables[0].Rows.Count];原创 2009-11-09 15:18:00 · 1564 阅读 · 0 评论 -
将指定字符串,按照指定格式分开
假设有字符串:0101000200,0101000300,0101000500,0101000700现在要将其他拆分成0101000200010100030001010005000101000700 //定义接受变量 string temp=""//接受输入变量 DataTable dt = new DataTable();原创 2009-11-12 17:55:00 · 897 阅读 · 0 评论 -
c#继承父类技巧,并增加新的实现
1 父类 partial class FormBillTemplet:Form /// /// 新单 /// /// /// public virtual void tsButtonNewBill_Click(object sender, EventArgs e) {原创 2010-01-19 13:58:00 · 904 阅读 · 0 评论 -
理解C#中事件和委托的例子
事件 在发生其他类或对象关注的事情时,类或对象可通过事件通知它们。发送(或引发)事件的类称为“发行者”,接收(或处理)事件的类称为“订户”。 public partial class Form1 : Form{public Form1(){InitializeComponent();}private void Form1_Load(object sender, EventArgs原创 2010-01-19 17:35:00 · 531 阅读 · 0 评论 -
C#关于bindingNavigator增强属性
一、增强功能说明:1、toolStripSplitButton下拉项显示当项(勾选),并且其他的下拉项全部去掉勾2、同步toolStripSplitButton与其下拉项3、增加一事件 menuItemAdded ,当增加下拉MenuItem项后发生4、增加方法: SyncToButton: 同步按钮与其下拉菜单项 ButtonAddMenuItem :代码增加Me原创 2010-01-20 15:54:00 · 3174 阅读 · 0 评论 -
在DataGridView上的指定单元格创建ComBox
1、声明 ComboBox ComBoxPsMode; 2、绑定配送模式下拉框 /// /// 绑定配送模式下拉框 /// private void BindComPsMode() { dataPSModeType = eCMyModule.eCMyData.SimpleExecuteDataSet("sel原创 2010-01-27 18:40:00 · 1828 阅读 · 0 评论 -
动态删除DataRows的数据行,要出错的变相处理方法
DataTable dt = new DataTable(); dt.Columns.Add("SortType"); dt.Columns.Add("WMID"); dt.Columns.Add("IsSave"); dt.Columns.Add("GoodID");原创 2010-01-25 16:03:00 · 890 阅读 · 0 评论 -
检索Table的某一字段是否存在某个条件的数据
DataSet datawarehouseDataRow[] mat; if (DaWaitWork.Tables[0].Rows.Count > 0){ mat = DaWaitWork.Tables[0].Select("(SWMunitid=" + strWID + ")"); if (mat.Length > 0) { if原创 2010-01-28 13:52:00 · 716 阅读 · 0 评论 -
C#操作压缩文件(rar,zip,gzip,winform/asp.net)
http://www.cnblogs.com/wequst/archive/2009/01/08/1371760.html 1、rar a file file.ext 如果file.rar不存在将创建file.rar文件;如果file.rar压缩包中已有file.ext,将更新压缩包中的file.ext2、rar a file d:/*.ext将d盘下所有ext文件(不包括自原创 2010-02-06 18:10:00 · 3130 阅读 · 0 评论 -
只能同时运行一个实例
[STAThread]static void Main(){ //……}是程序运行的入口点,默认情况下,里面的代码大致如下:[STAThread]static void Main(){ Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Applica原创 2010-02-06 18:13:00 · 518 阅读 · 0 评论 -
c#泛型和反射的设计应用(一)
在设备操作面板的设计中总会有一类固定的按钮和操作惯例,但如果每做一个项目都写一套同样的代码实在很没效率的事。 设备的操作按钮大多数都会包含启动、暂停、停止这三个按钮,软件界面中也同样需要这三类按钮,软件需要根据设备的状态来禁用或启用不同的按钮组合。比如刚启动软件时,启动按钮开启,暂停和停止按钮禁用等等。 一般设计情况下是用Button,也有的设计会用ToolStripBut原创 2010-02-07 10:34:00 · 526 阅读 · 0 评论 -
C#操作Xml的两种方式 XPath XmlDocument XmlNodeList
现有 XML 文件,内容如下:xml version="1.0" encoding="utf-8" ?>Company> Department > Name>IT DepartmentName> Manager>猪头三Manager> Employees> Employee> ID code="001" >10001I原创 2010-02-06 18:08:00 · 2165 阅读 · 0 评论 -
利用死循环巧妙实现,回车对话框不关闭
bool flag = true; while (true) { if (!flag) { break; } if (MessageBox.Show("商品检索原创 2011-08-26 12:49:58 · 912 阅读 · 0 评论