2015-04-02 105 views
-1

Form1 NewPage有一個datagridview和兩個按鈕AddEntry和EditEntry.Form2 AddEntry有6個文本框和ok按鈕。 當我點擊AddEntry按鈕,form2將打開。當我在文本框中輸入一些數據,然後單擊確定,它必須添加到form1的datagridview。將數據從一種形式的文本框傳遞到另一種形式的datagridview

我在AddEntry Button後面寫了這段代碼。現在我可以從文本框中獲取數據。

public void AddEntryBtn_Click(object sender, EventArgs e) 
     { 
      string x = label4.Text; 
      using (var obj_Addentry = new AddEntry(x)) 
      { 
       obj_Addentry.ShowDialog(); 
      } 
      this.Close(); 
     } 

當我點擊EditEntry按鈕行選擇的數據將出現在文本框來edit.but的問題是,當我在窗口2單擊OK按鈕,沒有任何作爲,我沒有代碼,用於將完成datagridview在form2的ok按鈕後面。將數據添加到datagridview的代碼位於form1的AddEntry按鈕後面。

我應該寫什麼來將數據添加到form2的ok按鈕後面的datagrid視圖中,而不是將它寫在form1的AddEntry按鈕後面?

回答

0

需要通過id發送所有文本框值,然後在頁2中通過使用查詢字符串獲取值都使用網格視圖中的值。

舉例道: 第1頁:

int ID = Convert.ToInt32(txtID.Text); 
     string url = "Page2.aspx?id=" + ID; 
     string fullURL = "window.open('" + url + "', '_blank');"; 
     ScriptManager.RegisterStartupScript(this, typeof(string), "OPEN_WINDOW", fullURL, true);  

第2頁:

if (!IsPostBack) 
     { 
      ID = Convert.ToInt32(Request.QueryString["id"]); 
      lblid.Text = ID.ToString(); 
     } 
+0

OMG @Nani是關於贏的形式不是網絡。 – 2015-04-02 10:20:49

0

中的AddEntry形式1.Write下來的委託和事件。 2.on單擊form2中的ok按鈕引發事件 3.以form1指派事件處理程序新頁面

例如,

public delegate void EditCompletedEvent(List<string> strEditedValues); 
public event EditCompletedEvent EditCompleted; 

public void OKBtn_Click(object sender, EventArgs e) 
{ 
if (this.EditCompleted!= null) 
       { 
        EditCompleted(listofEditedvalues); 
       } 
} 

//And in form1 assign event handler 

public void AddEntryBtn_Click(object sender, EventArgs e) 
     { 
      string x = label4.Text; 
      using (var obj_Addentry = new AddEntry(x)) 
      { 
       obj_Addentry.EditCompleted += 
        new Form2.EditCompletedEvent(obj_Addentry_EditCompleted) 
       obj_Addentry.ShowDialog(); 
      } 
      this.Close(); 
     } 

obj_Addentry_EditCompleted(List<string> Editedvalues) 
{ 
//Write down logic for assignment 
} 
相關問題