2013-11-27 35 views
1

請,我需要幫助發送數據從一個文本框到另一個表單的列表視圖(列數量)。如何發送日期從一個文本框到另一個表單的列表視圖

我在Form1

namespace officine 
{ 
    public partial class FormClav : Form 
    { 
     public FormClav() 
     { 
      InitializeComponent(); 
     } 

......

private void validation_Click(object sender, EventArgs e) 
    { 
    // need code here 
    // onclik thisend textbox1 to listview1 in formOrd 
    } 

我越來越條碼之後的第二形式 一個lisview1我填補這一列表視圖從dabase。 後來我打電話Form1中(數字鍵盤)更改精品欄目.. 所以我需要從Textbox1的發送數據(FormClav)在FormOrdo

namespace officine 
{ 
    public partial class FormOrdo : Form 
    { 
....... 



     private void loadproduct() 
      { 
       listView1.Items.Clear(); 
       cn.Open(); 
       cmd.CommandText = "select * from vente"; 
       dr = cmd.ExecuteReader(); 
       if (dr.HasRows) 
       { 
        while (dr.Read()) 
        { 
         string[] row = { dr[1].ToString(), dr[2].ToString()}; 
         var listViewItem = new ListViewItem(row); 

         listView1.Items.Add(listViewItem); 
        } 
       } 
       cn.Close(); 


      } 

任何想法lisview1請?

回答

0

您可以在FormClav中設置一個公共變量,並在其中放置您需要的值。

public partial class FormClav : Form 
{ 
    public FormClav() 
    { 
     InitializeComponent(); 
    } 
    public string yourvalue = "" 

} 

private void validation_Click(object sender, EventArgs e) 
{ 
yourvalue = textbox1.text; 
} 
0

嘗試通過一個委託當實例,它指向的是可以更新您的ListView第一形式的線程安全的方法的第二種形式。

0

你好過去的文本框的值,以另一種形式使用此代碼:

private void validation_Click(object sender, EventArgs e) 
{ 

     form2 a = new form2(); 
     a.MdiParent = this.MdiParent; // sets form2 as 'parent window' 
     a.value = yourTextBox.Text; // sets variable 'value' in form2 equal to yourTextBox value after button is clicked 
     a.Show(); //opens form2 

} 

在形式上2生成get設定值

public string value { get; set; } 

現在你可以用value輕鬆操作。

例如listView1.Items.Add(value);

在形式負載增加的ListView:

private void Form2_Load(object sender, EventArgs e) 
    { 
     listView1.Items.Add(value);  
    } 

編輯:

public partial class Form1 : Form 
    { 
    Form2 Frm2; 
    public Form1() 
    { 
     InitializeComponent(); 
     Frm2 = new Form2(this); 
    } 
    private void button1_Click(object sender, EventArgs e) 
    { 
     Frm2.Show(); 
     Frm2.textBox1.Text = "From Form1"; 
    } 
    } 
    public partial class Form2 : Form 
    { 
    Form1 Frm1; 
    public Form2(Form1 F) 
    { 
     InitializeComponent(); 
     Frm1 = F; 
    } 

    private void button1_Click(object sender, EventArgs e) 
    { 
     Frm1.textBox1.Text = "From Form2"; 
     Frm1.listView1.Items.Add(textBox1.Text); 
    } 


    } 
+0

感謝,但我並不需要再次打開窗口2,因爲我從窗口2推出Form1中......有沒有直接發送值到選定行的方式? – boularouk

+0

@boularouk,對不起,我認爲這是反之亦然,請參閱我的編輯。希望它可以幫助你。 – Marek

+0

謝謝,但仍然無法正常工作。我可以從相同的form1中的文本框中更改數據,但不能從form2中運行 – boularouk

相關問題