2013-10-29 51 views
0

我有一個綁定到加載文本到TextBox一個DataSource一個TextBox當在DataGridView所選行更改。附加文本數據之後控制已加載 - 的WinForms C#

假設TextBox顯示在DataGridView中選擇的某個項目的價格。我的文本框現在將顯示「100」,但我希望它顯示「100美元」。

數據綁定已在Visual Studio中完成,而不是以編程方式完成。

我試過以下,只有當窗體加載成功的結果;之後它回到沒有任何改變。

private void dgvItemList_RowEnter(object sender, DataGridViewCellEventArgs e) 
    { 
     textBoxPrice.AppendText(" USD"); 
    } 

我該如何做到這一點,而無需以編程方式加載數據並在該點附加文本?

回答

0

此應該提供所期望的結果:

它將格式化從所述第三列中的值(I加入此數據表作爲一個例子)。

 private void Form1_Load(object sender, EventArgs e) 
     { 
      DataTable dt = new DataTable(); 
      dt.Columns.Add("Column1"); 
      dt.Columns.Add("Column2"); 
      dt.Columns.Add("Column3"); 
      dt.Rows.Add(3, 1,35); 
      dt.Rows.Add(1, 3, 62); 
      BindingSource s = new BindingSource(); 
      s.DataSource = dt; 
      this.dataGridView1.DataSource = s; 
      Binding b = new Binding("Text", s, "Column3"); 
      b.Format += new ConvertEventHandler(b_Format); 
      textBox1.DataBindings.Add(b); 
     } 

     void b_Format(object sender, ConvertEventArgs e) 
     { 
      e.Value = e.Value.ToString() + " USD"; 
     } 
你的情況

結合綁定源到你的數據源,則綁定源到DataGridView等類似的例子。