Список с более чем одним элементом управления
Может кто-нибудь помочь мне в создании списка с флажком и звездным рейтингом, выровненным по горизонтали? Я хочу это для WP7 с использованием C# и XAML.
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
или проверьте детали здесь: Пример сайта
Вы можете получить более подробную информацию об этом: CustomDataTemplateSelector WP7 Проверено ListBox по-разному.
Установить ItemTemplate
:
<ListBox>
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<CheckBox Checked="{Binding YourPropertyPath}"/>
<ns:StarControl/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>