Winform控件數據源綁定(一)之TextBox綁定


一, 對於多個TextBox賦值的方法有兩個

  思路 (1)是逐個改變textbox的Text屬性

  //返回一個DataTable

  DataTable dt1 = dodb.QueryOrderDetailByOrderId(this.OrderID.Text);

  //迭代GroupBox中的控件

  foreach( Control c in this.groupBox1.Controls )
  {

     //判斷控件的類型是不是TextBox,這里用is判斷也是可以的控件都繼承自Controls
    if(c.GetType()==typeof(TextBox))
    {

        //獲取列名
      string ColumnName = c.Name;

        //迭代列名
      foreach( DataColumn dc in dt1.Columns )
      {

          //賦值的值不為空,判斷列名是否和DataTable表中列名一致
        if (ColumnName.Equals(dc.ColumnName) & dt1.Rows[0] != null)
          {

          //改變TextBox的值

          c.Text = dt1.Rows[0][dc.Ordinal].ToString();
        }
      }

      }

  }
  思路(2)利用textBox的DataBinding屬性去綁定數據源

  

  foreach( Control c in this.groupBox1.Controls )
  {
    if(c.GetType()==typeof(TextBox))
    {
      string ColumnName = c.Name;
      foreach( DataColumn dc in dt1.Columns )
      {

       if (ColumnName.Equals(dc.ColumnName) & dt1.Rows[0] != null)
       {

        //這里是關鍵 第一個參數屬性名稱,第二個參數數據源,第三個參數要顯示列的字段名
        c.DataBindings.Add("text", dt1, dc.ColumnName);
       }
    }
  }

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM