2014-07-05 8 views
-2

나는리스트 박스를 문자열 목록과 체크 박스로 묶었습니다. 다중 선택을 지원합니다. 확인란의 값을 선택한 후 문자열 목록에 저장하고 싶습니다.목록 상자에서 선택된 체크 박스 값을 얻으려면 wpf

아래 코드는 널 인수를 예외로합니다.

XAML 코드 : -

<ListBox x:Name="suites" Margin="0,10,0,0" ItemsSource="{Binding suitelist}" > 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <DockPanel>      
       <CheckBox x:Name="check_suite" DockPanel.Dock="Left" 
          Content="{Binding .}" IsChecked="{Binding RelativeSource= 
          {RelativeSource AncestorType={x:Type ListBoxItem}}, 
          Path=IsSelected}" /> 
      </DockPanel> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 

C# 코드 : - 당신이 여기에 게시 코드에서

suites.ItemsSource = suitelist; 
suites.SelectionMode = SelectionMode.Multiple; 
foreach (var i in suites.SelectedItems) 
{ 
    suiteIdlist.Add(i.ToString()); 
} 
+0

예외가 발생하는 줄은 무엇입니까? –

+0

예외의 정확한 텍스트를 볼 수 있습니까? – grzkv

+5

또한 user2714823이 커뮤니티에서 아무 것도받지 못하면 수용 비율을 여기에서 조정해야합니다. 23 가지 질문과 단 한 건의 대답이 없습니다. 어떤 질문도 유효한 답변이 아닙니까? –

답변

1

대부분의 경우, 그것은 suiteIdlist가 초기화되지 않았 가능성이 있습니다. 목록을 사용하기 전에 초기화하십시오.

suiteIdlist = new List<string>(); 
foreach (var i in suites.SelectedItems) 
{ 
    suiteIdlist.Add(i.ToString()); 
} 
관련 문제