2012-01-11 53 views
0

我使用在wp7中提供MultiSelectionList控件的工具包,我嘗試使用C#中的屬性ItemsSource將名稱綁定到multiselectItem。在使用錯誤之前項目集合必須爲空

<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"> 
    <StackPanel> 
     <TextBlock Text="Please select the satellites from the list:-" /> 
     <toolkit:MultiselectList Name="multiSelectionList"> 
      <toolkit:MultiselectItem Content="{Binding Name}" /> 
     </toolkit:MultiselectList> 
    </StackPanel> 
</Grid> 

但是我得到了這個錯誤。

Items collection must be empty before using ItemsSource. 

我在應用程序的其他部分測試了服務,並且沒有問題。

請告知me.Thanks,

+0

你在哪裏設置你的'MultiselectList「的ItemsSource」,如果你在代碼中設置它,那麼你應該有一個空的列表,但在你上面的例子將單個項目添加到列表中。我想你嘗試添加一個數據模板到MultiselectList而不是一個Item,或者我錯了嗎? – BigL 2012-01-11 21:54:08

回答

1

你添加項目到MultiSelectList當你:

<toolkit:MultiselectItem Content="{Binding Name}" /> 

到時候你指定ItemsSource,我假設你在幹什麼代碼隱藏在某個地方,列表中已經有一個項目(上面的項目)。這就是錯誤被拋出的原因。在設置源代碼之前,您可以手動清除列表,但這不一定是好的做法。你可以做的是創建一個DataTemplate,而不是一個MultiSelectItem的實際實例。我不熟悉這個控制,但嘗試:

<toolkit:MultiselectList Name="multiSelectionList"> 
    <toolkit:MultiSelectList.ItemTemplate> 
    <DataTemplate> 
     <toolkit:MultiselectItem Content="{Binding Name}" /> 
    </DataTemplate> 
    </toolkit:MultiSelectList.ItemTemplate> 
</toolkit:MultiselectList> 
+0

很好的答案,很快就會在XAML中忘記一件事。 :) <工具箱:MultiselectList.ItemTemplate> BigL 2012-01-11 21:58:46

+1

我想我編輯它,你發佈之前的註釋:)(除非我失去了一些東西。 ..?) – keyboardP 2012-01-11 22:00:26

+0

對不起,也許你不能這樣工作,對我來說只是有點不尋常,我總是使用我在這裏添加評論的語法。 :) – BigL 2012-01-11 22:01:11

相關問題