2012-03-07 3 views
0

2 가지 형식이 있습니다. form1과 form2. form2에는 form2에 액세스 할 수있는 button1이 있고, form2에는 listview2와 textbox가 있습니다. listview2에 항목을 입력 할 수 있습니다. 그런 다음 form2의 OK 버튼을 클릭하면 form1의 listview1이 listview2와 정확히 일치해야합니다. 얘들 아, 나에게 이걸 할 수있는 방법을 제안 해 줄 수 있니? 감사합니다한 양식에서 다른 양식으로 목록보기를 전달하는 방법은 무엇입니까?

아래는 나의 코드입니다. 나는 너를 모두 혼동하지 않기를 바란다.

Form1 코드 =>

namespace MainServerPage 

{ 공용 부분 클래스 MainServerPage : 폼 { 공공의 ListView LV;
공용 MainServerPage() { InitializeComponent(); }

private void btnAdd_Click(object sender, EventArgs e) 
    { 
     AddItem Add = new AddItem(this);    //to open form2 
     Add.ShowDialog(); 
    } 

} 

}

형식 2 코드 =>

namespace MainServerPage 

{ 공용 부분 클래스 AddItem을 : 폼 { MainServerPage의 currentform; // 형식을 다른 것으로 전달하는 방법을 배우지 만 작동하지 않습니다. public AddItem (MainServerPage incomingform) { currentform = incomingform; InitializeComponent(); }

private void btnUpdate_Click(object sender, EventArgs e) 
    { 
     ListViewItem item = new ListViewItem(txtCode.Text); 
     item.SubItems.Add(txtLocation.Text); 
     item.SubItems.Add(cbxStatus.Text); 
     item.SubItems.Add(txtWeatherHigh.ToString()); 
     item.SubItems.Add(txtWeatherLow.ToString());   

     listView2.Items.Add(item);  //send to listView2 

     txtCode.Text = ""; 
     txtLocation.Text = ""; 
     cbxStatus.Text = ""; 
     txtWeatherHigh.Text = ""; 
     txtWeatherLow.Text = ""; 
     cbxZone.Text = "";      

    } 

    private void btnOk_Click(object sender, EventArgs e) 
    { 
     currentform.LV = load; //I got stuck here...do not know what to do 
    } 
} 

} 일반적으로

답변

0

, 당신이 전달하려는 목록보기 아니라, 그것은 데이터를 목록보기를 나타내는 것을을합니다. btnUpdate_Click 함수가 ListViewItem을 직접 작성하는 대신 데이터 객체를 작성하도록 디자인을 재고해야합니다. 그런 다음 데이터 객체를 첫 번째 양식으로 다시 전달할 수 있습니다.

+0

감사합니다 ... 나는 그런 식으로 일할 것입니다. 고맙다. – EmporerHaki

관련 문제