2010-08-23 2 views
0

Windows Phone 7 응용 프로그램의 목록 상자에서 여러 항목을 선택하려면 어떻게합니까? 나는 그 중 세 가지를 선택해야합니다 동안 예컨대Windows Phone 7 응용 프로그램의 목록 상자에서 여러 항목을 선택할 수 없습니다.

listboxName.SelectedIndex = 0; 
listboxName.SelectedIndex = 1; 
listboxName.SelectedIndex = 2; 

위의 코드는이 선택합니다.

내가 아래 그림과 같이 {거짓, 거짓, 사실 진정한, 진정한}

그래서 내가 사용에 isSelected을 시도 ... 작동하지 않는 같은 배열에 나에게 주어진 미리 선택해야 할 값 .

 int i = 0; 
    foreach (ListBoxItem currentItem in listboxName.SelectedItems) 
      { 
       if (tagindexeselected[i]) 
       { 
        currentItem.IsSelected = true; 
       } 
       i++; 
      } 

목록 상자에서 여러 항목을 선택하는 올바른 방법은 무엇입니까?

답변

1

단 하나의 최선의 방법이라고 말하기는 어렵습니다. 목록 상자를 채우는 방식 등에 따라 다릅니다. 먼저 목록 상자의 선택 모드가 복수 또는 확장으로 설정되어 있는지 확인하십시오. 하지 Items 컬렉션 - 당신은 selectedItems를 수집 반복하고, 위의 예에서도

 listBox1.SelectedItems.Add(listBox1.Items[0]); 
     listBox1.SelectedItems.Add(listBox1.Items[1]); 
     listBox1.SelectedItems.Add(listBox1.Items[2]); 

참고 :

하나의 옵션은 목록 상자의 selectedItems를 수집을 사용하는 것입니다. 아무것도 선택하지 않으면 빈 컬렉션입니다. 또한 목록 상자 ItemsSource가 일련의 ListBox 항목이 아닌 경우 itemsSource를 거의 모든 열거 형으로 설정할 수 있습니다. foreach 문을 실행하면 InvalidCastException이 발생합니다.

0

foreach는 (lstServer.SelectedItems에서을 DataRowView 항목) {

   string WebServerIP = item[lstServer.DisplayMember].ToString(); 
       string WebServerUrl = item[lstServer.ValueMember].ToString(); 
       _WebObjIgent.Url = WebServerUrl; 

      } 

참고 : lstServer 윈도우 응용 프로그램의 목록 상자입니다. Displaymember와 valuemember proprty를 사용하여 listbox의 값과 텍스트에 액세스 할 수 있습니다.