2012-04-16 54 views

回答

2

這裏需要編寫一個自定義列表是一個例子:

您需要包括ControlToolkit:

xmlns:ControlsToolkit="clr-namespace:System.Windows.Controls" 

和這裏是代碼:

<ListBox x:Name="listBox" SelectionMode="Multiple" 
    ItemContainerStyle="StaticResource ListBoxCheckedStyle}"> 
    <ListBox.ItemTemplate> 
     <DataTemplate> 
      <StackPanel Orientation="Horizontal"> 
       <CheckBox Checked="{Binding YourPropertyPath}"/>    
       <TextBlock Text="{Binding Name}" Width="150" VerticalAlignment="Center"/> 
        <ControlsToolkit:Rating Height="50" Grid.Row="0" x:Name="rating" ItemCount="5"> 
      <ControlsToolkit:Rating.ItemsPanel> 
       <ItemsPanelTemplate> 
        <StackPanel Orientation="Horizontal" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/> 
       </ItemsPanelTemplate> 
      </ControlsToolkit:Rating.ItemsPanel> 
     </ControlsToolkit:Rating> 
      </StackPanel> 
     </DataTemplate> 
    </ListBox.ItemTemplate> 
    </ListBox> 

你可以從這裏下載樣本: DownloadSample

或點擊此處查看詳細信息: Sample site

你可以得到更詳細的關於這些: CustomDataTemplateSelector WP7 Checked ListBox in different ways

+0

在你給出的代碼中,我想要一個StarControl而不是Image,但它不會來。 – Shan 2012-04-16 06:00:32

+0

StarControl不可見。複選框和文本正常顯示。 – Shan 2012-04-16 08:20:21

1

設置ItemTemplate

<ListBox> 
    <ListBox.ItemTemplate> 
    <DataTemplate> 
     <StackPanel Orientation="Horizontal"> 
     <CheckBox Checked="{Binding YourPropertyPath}"/> 
     <ns:StarControl/> 
     </StackPanel> 
    </DataTemplate> 
    </ListBox.ItemTemplate> 
</ListBox> 
+1

這顯示錯誤說明StarControl在Silverlight項目中不受支持。 – Shan 2012-04-16 05:31:16

+0

正確 - 這不是標準控件。您需要爲這部分用戶界面提供一個控件。 – ColinE 2012-04-16 07:23:56

+0

@ColinE通過「源代碼控制」,你的意思是喜歡自定義控件嗎? – 2012-04-16 07:38:46