modernsky2003

C#2003 WINFORM 常用代码(一)

  private void ItemSel(bool IsSel)
  {
   for(int i=0;i<listVPurview.Items.Count;i++)
   {
    ListViewItem li = listVPurview.Items[i];
    if(IsSel)
     li.Checked = true;
    else
     li.Checked = false;
   }
  }
---------------------------------------------------------------------------------------------------
   if(this.listVRole.SelectedItems.Count <= 0)return;
   if(RoleContent == "") return;
   ListViewItem li = listVRole.SelectedItems[0];
   FRoleMachineGroup MachineGroup = new FRoleMachineGroup();
   MachineGroup.FroleId = li.Tag.ToString();
------------------------------------------------------------------------------------------------------
 private void txtFWorkAge_KeyPress(object sender, System.Windows.Forms.KeyPressEventArgs e)
  {
   if((e.KeyChar<'0'||e.KeyChar>'9')&&e.KeyChar!=13&&e.KeyChar!=8)
   {
    e.Handled=true;
     MessageBox.Show("您只能输入数字,不能输入其它字符!","提示信息",MessageBoxButtons.OK ,MessageBoxIcon.Information);
   }
  }
------------------------------------------------------------------------------------------------------
 private void ControlBind()
  {
   DataTable dt = new DataTable();
   DataColumn dc1 = new DataColumn("FName");
   dt.Columns.Add(dc1);
   DataColumn dc2 = new DataColumn("FValue");
   dt.Columns.Add(dc2);
   DataRow dr = dt.NewRow();
   dr[0] = "程序名";
   dr[1] = "FNAME";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0]="文件名";
   dr[1] = "FPROGRAMNAME";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0]="添加人";
   dr[1] = "FCREATENAME";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0] = "图号";
   dr[1] = "FPRODECE";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0]="添加时间";
   dr[1] = "FTIME";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0] = "版本号";
   dr[1] = "FEDITION";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0] = "机床";
   dr[1] = "FMACHINE";
   dt.Rows.Add(dr);
   dr = dt.NewRow();
   dr[0] = "说明";
   dr[1] = "fdesc";
   dt.Rows.Add(dr);
   this.comboBox1.DisplayMember = dt.Columns["FName"].ToString();
   this.comboBox1.ValueMember = dt.Columns["FValue"].ToString();
   this.comboBox1.DataSource = dt;
--------------------------------------------------------------------------------------------------------------
 private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
  {
   if( this.comboBox1.SelectedValue.ToString() == "FTIME")
   {
    string[] IColl = new string[3]{">","=","<"};
    this.comboBox2.Items.Clear();
    this.comboBox2.Items.AddRange(IColl);
    this.dtimeP.BringToFront(); //dtimeP datatimepicker控件置前
   }
   else
   {
    comboBox2.Items.Clear();
    comboBox2.Items.Add("=");
    this.textBox1.BringToFront();//textBox1控件置前
   }
  }
-----------------------------------------------------------------------------------------------------------------
DateTime  dtime = this.dtimeP.Value;
FValue = String.Format("{0:yyyy-MM-dd}",dtime);
MessageBox.Show(this.comboBox1.Text.Trim() + "信息没有填写,\r\n\r\n无法检索程序!","信息提示!");

 public bool sqltransaction(string sqlbuilding)
  {
   SqlConnection Cn=DbConnect();
   Cn.Open();
   SqlTransaction transaction=Cn.BeginTransaction();
   string[] sql=new string[sqlbuilding.Length];
   sql=sqlbuilding.Split('&');
   try
   {
    for(int i=0;i<sql.Length;i++)
    {
     SqlCommand commandinsert=new SqlCommand(sql[i].ToString(),Cn);
     commandinsert.Transaction=transaction;
     commandinsert.ExecuteNonQuery();
    }
    transaction.Commit();
    return true;
   }
   catch
   {
    transaction.Rollback();
    return false;
   }
  }
  public SqlConnection DbConnect()
  {
   SqlConnection Cn = new SqlConnection(Scn);
   return Cn;
  }
  public void DBsubmit(string SQL)
  {
   SqlConnection Cn = new SqlConnection(Scn);
   Cn.Open();
   SqlCommand sqlupdate=new SqlCommand(SQL,Cn);
   sqlupdate.ExecuteNonQuery();
   Cn.Close();
  }
  #region Rtdbtable
  public DataTable Rtdbtable(string SQL,string Stablename)
  {
   DataTable DT = new DataTable();
   if(Stablename!="none")
   {
    SqlDataAdapter SQLAdap=new SqlDataAdapter(SQL,DbConnect());
    DataSet ST = new DataSet();
    SQLAdap.Fill(ST,Stablename);
    DT=ST.Tables[0];
   }
   return DT;
  }
  #endregion

  #region Rtdbtable
  public DataTable GetDataTable(string SQL)
  {
   DataTable DT = new DataTable();
   
   SqlDataAdapter SQLAdap=new SqlDataAdapter(SQL,DbConnect());
   DataSet ST = new DataSet();
   SQLAdap.Fill(ST);
   DT=ST.Tables[0];
   
   return DT;
  }
  public int rowcount(string tablename)/////////////返回对应表的记录数
  {
   int rowcount=0;
   tablename="select count(*) from "+tablename+" where Fisdelete like '1%'";
   SqlConnection Cn = new SqlConnection(Scn);
   Cn.Open();
   SqlCommand sqlupdate=new SqlCommand(tablename,Cn);
   sqlupdate.ExecuteNonQuery();
   rowcount=(int)sqlupdate.ExecuteScalar();
   return rowcount;
  }
--------------------------------------------------------------------------------------------------------------------
private void SendMachineSel_Load(object sender, System.EventArgs e)
  {
  
   if(FMachineFid.Length <= 0)
   {
    this.Close();
   }
   PbaseUpdate Pbase = new PbaseUpdate();
    string sql = "select FGROUPFID from DNC_SYS_MACHINE where fid='"
     + FMachineFid + "'";
    this.listView1.CheckBoxes = true;
    Object Obj = Pbase.ExecuteSql(null,sql,rulebase.SqlResultEnum.Have);
    if(Obj != System.DBNull.Value)
    {
     sql = "select * from DNC_SYS_MACHINE where FGROUPFID = '"+Obj.ToString()+"'";
     DataTable dt = Pbase.GetDatetable(null,sql);
     if(dt.Rows.Count > 0 )
     {
      ListViewItem[] liConn = new ListViewItem[dt.Rows.Count];
      for(int i=0;i<dt.Rows.Count;i++)
      {
       string NeedReturn = "程序需要返回";
       if(dt.Rows[i]["FPROGRAMRETURN"].ToString() == "1")
        NeedReturn = "程序不需要返回";
       string[] stritem = new string[5]{
                dt.Rows[i]["FNAME"].ToString(),
                dt.Rows[i]["FRMARTSTART"].ToString(),
                dt.Rows[i]["FRMARTROW"].ToString(),
                NeedReturn,
                dt.Rows[i]["fdesc"].ToString()
               };
       ListViewItem list = new ListViewItem(stritem);
       list.ImageIndex = 0;
       list.StateImageIndex=1;
       if(dt.Rows[i]["fid"].ToString() == FMachineFid)
        list.BackColor = Color.SlateGray;
       list.Tag = dt.Rows[i]["Fid"];
       this.listView1.Items.Add(list);
      }
     }
    }
    else
    {
     this.Close();
    }
   }
-------------------------------------------------------------------------------------------
 private void button1_Click(object sender, System.EventArgs e)
  {
   string FMachine = "";
   int ii = 0;
   for(int i=0;i<this.listView1.Items.Count;i++)
   {
    ListViewItem li = this.listView1.Items[i];
    if(li.Checked)
    {
     ii++;
     FMachine = FMachine + li.Tag.ToString() + '|' + li.SubItems[0].Text.Trim()+'*';
    }
   }
   if(FMachine.Length <= 0)
   {
    DialogResult Result = MessageBox.Show("没有选择需要下发的机床,是否取消本次程序下发业务?",
     "兰光科技!",MessageBoxButtons.OKCancel,MessageBoxIcon.Question,MessageBoxDefaultButton.Button2);
    if(Result == DialogResult.OK)
    {
     FMachineFid = "";
     this.Close();
    }
   }
   else
   {
    MessageBox.Show("本次将此程序下发:"+ii.ToString()+"机床。","兰光科技!");
    FMachineFid = FMachine.Substring(0,FMachine.Length-1);
    this.Close();
   }
  }

  private void listView1_ItemCheck(object sender, System.Windows.Forms.ItemCheckEventArgs e)
  {
   ListViewItem li = (ListViewItem)sender;
   if(e.CurrentValue == CheckState.Checked)
   {
    li.Selected = true;
   }
   else
    li.Selected = false;
  }
----------------------------------------------------------------------------------------------------

  private void FMachineGroup_Load(object sender, System.EventArgs e)
  {
   PbaseUpdate Pbase = new PbaseUpdate();
   if(FroleFid == "")
   {
    this.Close();
   }
   else
   {
    string sql = "select fid,FMachineGroupFid,FPLANTFID,FCONTENT from DNC_SYS_ROLE where fid='"
     + FroleFid  + "'";
    DataTable dt = Pbase.GetDatetable(null,sql);
    if(dt == null)return;
    if(dt.Rows.Count <= 0)return;
    if(RoleContent.IndexOf("Btn_SetMachGroup") != -1)
     button1.Enabled = true;
    else
     button1.Enabled = false;
    string FGroupFid = dt.Rows[0]["FMachineGroupFid"].ToString();
     sql = "select fid,fname,ftime from DNC_SYS_MACHINEGROUP where FPlantfid='"
      + dt.Rows[0]["FPLANTFID"].ToString().Trim() + "'";
    dt = Pbase.GetDatetable(null,sql);
    if(dt.Rows.Count <= 0)return;
    for(int i = 0;i<dt.Rows.Count;i++)
    {
     string[] str = new string[2]{dt.Rows[i]["fname"].ToString().Trim(),dt.Rows[i]["ftime"].ToString()};
     ListViewItem li = new ListViewItem(str,0);
     li.StateImageIndex = 1;
     string GroupFid = dt.Rows[i]["Fid"].ToString();
     if(FGroupFid.IndexOf(GroupFid) != -1 || FGroupFid == "%")
     {
      li.Checked = true;
      li.BackColor = Color.Silver;
     }
     else
      li.Checked = false;
     li.Tag = dt.Rows[i]["Fid"].ToString();
     this.listView1.Items.Add(li);
    }
   }
  }
--------------------------------------------------------------------------------------
  private void listView1_DoubleClick(object sender, System.EventArgs e)
  {
       ListViewItem li = this.listView1.SelectedItems[0];
   this.listView2.Items.Clear();
    string sql="select fname,FRMARTSTART,FRMARTROW,fdesc,ftime from dnc_sys_machine where fgroupfid like '"+li.Tag+"%'";
   PbaseUpdate Pbase = new PbaseUpdate();
   DataTable dt = Pbase.GetDatetable(null,sql);
   if(dt.Rows.Count>0)
   {
    for(int i=0;i<dt.Rows.Count;i++)
    {
     string[] str = new string[5]
      {
       dt.Rows[i]["fname"].ToString(),
          dt.Rows[i]["FRMARTSTART"].ToString(),
          dt.Rows[i]["FRMARTROW"].ToString(),
          dt.Rows[i]["fdesc"].ToString(),
          dt.Rows[i]["ftime"].ToString()
      };
     ListViewItem list = new ListViewItem(str,2);
     list.ImageIndex=3;
     list.ForeColor = Color.Green;
     this.listView2.Items.Add(list);
    }
   }
  }
-----------------------------------------------------------------------------------------------------
      sql = string.Format("INSERT INTO ProgramInfo(ProgramName, InsTime, Note) VALUES('{0}','{1}','{2}')", tProgramName.Text.Trim(), DateTime.Now, tNote.Text.Trim());
       sql = string.Format("UPDATE ProgramInfo SET  ProgramName='{0}', InsTime='{1}', Note='{2}' WHERE ProgramID='{3}'", tProgramName.Text.Trim(), DateTime.Now, tNote.Text.Trim(), id);
   


listView1控件的VIEW属性应该为detail属性时,才会显示listview的头信息.   
private void listView1_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (listView1.SelectedItems.Count > 0)
            {
                tProgramName.Text = listView1.SelectedItems[0].SubItems[0].Text;
                dInsTime.Text = listView1.SelectedItems[0].SubItems[1].Text;
                tNote.Text = listView1.SelectedItems[0].SubItems[2].Text;
            }
        }
  private void btndel_Click(object sender, EventArgs e)
        {
            if (listView1.SelectedItems.Count > 0)
            {
                string result = null;
                object id = listView1.SelectedItems[0].Tag;
                sql = string.Format("DELETE FROM ProgramInfo WHERE ProgramID='{0}'", id);
                int i = com.UpdateData(sql, out result);
                if (i >= 1)
                {
                    MessageBox.Show("程序删除成功");
                }
    private void DataBindPageProgramInfo()
        {
            listView1.Items.Clear();
            DataSet ds = new DataSet();
            ds = com.GetData("Select * From ProgramInfo");
            if (ds != null)
            {
                if (ds.Tables.Count > 0)
                {
                    foreach (DataRow row in ds.Tables[0].Rows)
                    {
                        ListViewItem lvi = new ListViewItem();
                        lvi.Tag = row["ProgramID"];
                        lvi.SubItems.Add(row["ProgramName"].ToString());
                        lvi.SubItems.Add(row["InsTime"].ToString());
                        lvi.SubItems.Add(row["Note"].ToString());
                        lvi.SubItems.RemoveAt(0);
                        listView1.Items.Add(lvi);
                    }
                }
            }
            //listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.ColumnContent);
            listView1.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize);
        }


    TreeNode SelNode =TrPruductStruct.SelectedNode;
    if(SelNode==null)
    {
     MessageBox.Show("没有选中节点,系统无法确认,请重新选择!","信息提示");
     return;
    }
    ////////////////
    if(SelNode.Parent == null)
    {
     MessageBox.Show("根节点不允许添加程序!","信息提示");
     return;
    }

-------------------------------------------------------------------------------------------------
  /// <summary>
  /// 查看登陆系统机器的IP地址
  /// </summary>
  /// <returns></returns>
  public IPAddress  GetTcpip()
  {
   System.Net.IPHostEntry ipHostInfo=System.Net.Dns.Resolve(System.Net.Dns.GetHostName());
   return ipHostInfo.AddressList[0];
  }
  public object UpdateMiddTable(IConnection Cn,Byte[] buff,string Fid,bool Judge)
  {
   if(Fid==null || Fid=="" || buff.Length<=0) return null;
   string sql="";
   if(!Judge)
                sql =  "update DNC_PRODUCTPROGRAM_CODE set FCODE =:byte where FID=:fid";
   else
    sql = "insert into DNC_PRODUCTPROGRAM_CODE(fid,FCODE) values(:fid,:byte)";// where Fid=:fid";
   if(Connection.strCon.Length <= 0)
   {
    Connection.strCon = GetConf("ConnectionString");
   }
   OracleConnection OraConn = new OracleConnection(Connection.strCon);
   try
   {
    try
    {
     OraConn.Open();
    }
    catch(Exception ex)
    {
     throw ex;
    }
       OracleCommand OraCommand = new OracleCommand(sql,OraConn);
    OraCommand.CommandType=CommandType.Text;
    OraCommand.CommandText=sql;
    OraCommand.Parameters.Add("byte",System.Data.OracleClient.OracleType.Blob,buff.Length);
    OraCommand.Parameters.Add("fid",System.Data.OracleClient.OracleType.VarChar,Fid.Length);
    OraCommand.Parameters[0].Value=buff;
    OraCommand.Parameters[1].Value=Fid;
    try
    {
     return OraCommand.ExecuteNonQuery();
    }
    catch(Exception ex)
    {
     throw ex;
    }
   }
   catch(Exception ex)
   {
    throw ex ;
   }
   finally
   {
    OraConn.Dispose();
--------------------------------------------------------------------------------------------------
public string BuildSqlbyDict( IConnection Cn, IDictionary dict,SqlOptTypeEnum type,string EntityName,string Condition )
  {
   if ( dict == null && type!=SqlOptTypeEnum.Delete )
    return "";

   StringBuilder strSql=new StringBuilder();   
   switch ( type )
   {
    case SqlOptTypeEnum.Delete:
     strSql.Append(" Delete from ");
     strSql.Append(EntityName);
     strSql.Append(" where ");
     strSql.Append(Condition);
     break;
    case SqlOptTypeEnum.Insert:
     strSql.Append(" Insert Into ");
     strSql.Append( EntityName );
     strSql.Append(" (");
     foreach (string  Field in dict.Keys)
     {
      AppendFieldstr(strSql,Field,false,false);
     }
     strSql.Remove(strSql.Length-1,1);
     strSql.Append(" ) Values ( ");
     foreach (object val in dict.Values)
     {
      AppendValuestr( Cn, strSql,val,false);
     }
     strSql.Remove(strSql.Length-1,1);
     strSql.Append(" ) ");
     break;
    case SqlOptTypeEnum.Update:
     strSql.Append(" Update ");
     strSql.Append( EntityName );
     strSql.Append(" Set ");
     IEnumerator ekey=dict.Keys.GetEnumerator();
     IEnumerator eval=dict.Values.GetEnumerator();
     ekey.MoveNext();
     eval.MoveNext();
     for ( int j=0;j<dict.Count;j++)
     {
      AppendFieldstr(strSql,ekey.Current,false,true);
      AppendValuestr( Cn, strSql,eval.Current,false);
      ekey.MoveNext();
      eval.MoveNext();
     }
     strSql.Remove(strSql.Length-1,1);
     strSql.Append(" Where ");
     strSql.Append(Condition);
     break;
    case SqlOptTypeEnum.Select:     
     strSql.Append(" Select ");
     foreach (string  Filed in dict.Keys)
     {
      AppendFieldstr(strSql,Filed,false,false);
     }
     strSql.Append(" From ");
     strSql.Append(EntityName);
     strSql.Append(" where ");
     strSql.Append(Condition);
     break;
    default:
     break;
   }
   return  strSql.ToString();
  }
-------------------------------------------------------------------------------------------------------
 private static void CreateCn( ref IConnection Cn, ref bool isExistCn )
  {
   if( Cn == null )
   {
    Cn = new Connection();
    //    Cn = new IConnection();

    if( Cn.State != ConnectionState.Open )
    {
     try
     {
      Cn.Open();
     }
     catch(Exception ex)
     {
      throw ex;
     }
    }

    isExistCn = true;
   } 
   else
   {
    if( Cn.State != ConnectionState.Open )
    {
     try
     {
      Cn.Open();
     }
     catch(Exception ex)
     {
      throw ex;
     }
     isExistCn = true;
    }
   }
--------------------------------------------------------------------------------------------------------
  private void DisposeAdapter(IDbDataAdapter adapter)
  {
   if ( adapter !=null )
   {
    switch(m_DatabaseType)
    {
     case DatabaseTypeEnum.SQLServer:
      SqlDataAdapter sc=(SqlDataAdapter)adapter;
      sc.Dispose();
      break;
     case DatabaseTypeEnum.Oracle:
      OracleDataAdapter oc=(OracleDataAdapter)adapter;
      oc.Dispose();
      break;
     case DatabaseTypeEnum.Oledb:
      OleDbDataAdapter olc=(OleDbDataAdapter)adapter;
      olc.Dispose();
      break;
     default:
      olc=(OleDbDataAdapter)adapter;
      olc.Dispose();
      break;
    }
   }
---------------------------------------------------------------------------------------------------------------

posted on 2007-12-14 14:35  hekeneng  阅读(409)  评论(0编辑  收藏  举报

导航