VB.net

2012-03-09 3 views
0

net의 다른 페이지 (Windows Phone 7)의 목록 상자에 요소를 추가하여 Windows Phone 응용 프로그램을 만듭니다. listBox1이라는 page1에 listBox가 있고 2 페이지에 btnAdd라는 버튼이 있습니다. btnAdd가 page2에서 눌려 질 때마다 page1에서 listbox1에 항목을 추가 할 수 있기를 원합니다. VB6에서이 작업을 수행하는 방법을 알고 있지만 vb.Net에서 다른 것처럼 보입니다. 누군가 도와 주실 수 있습니까? ThanksVB.net

답변

1

두 페이지 (어쩌면 별도의 클래스)에서 사용할 수있는 데이터 소스에 listBox1을 바인딩 한 다음 btnAdd click 이벤트에서 해당 데이터 소스를 업데이트하는 방법은 어떻습니까?

예 : 페이지 1에서

는 추가하십시오 OnNavigatedTo 재정의 추가에

public static List<string> listItems = new List<string>(); 

:

페이지 2하여 btnAdd_Click 처리기에서
listBox1.ItemsSource = null; 
listBox1.ItemsSource = listItems; 

추가 :

Page1.listItems.Add(textBox1.Text); 

미안하지만 C#이지만 VB와 동등한 것은 어렵지 않습니다.

ViewModel 접근 방식을 사용하고 INotifyPropertyChanged를 구현하면 OnNavigatedTo의 ItemSource를 재설정 할 필요가 없으므로보다 명확 해집니다.

+0

btnAdd는 page2의 텍스트 상자에있는 텍스트를 추가합니다. 따라서 이것이 가능하지 않다고 생각합니다. – Matt9Atkins

+0

나는 당신을 팔로우하지 않습니다. 한 번에 한 페이지 만 볼 수 있습니다. Page2를 클릭하고 버튼을 클릭하면 btnAdd_Click 핸들러에서 작성한 데이터 소스에 텍스트를 추가합니다 (별도의 클래스에 있으므로 두 페이지에서 모두 사용할 수 있음). ListBox는 해당 데이터 소스에 바인딩되므로 Page1로 돌아갈 때 추가 데이터가 반영되어야합니다. – Nomad101

+0

답변에 단순화 된 예를 추가했습니다. – Nomad101