我希望listpicker處於全屏模式。但那不是我的問題。我想要帶有數據綁定的列表選擇器,與Windows Phone的「設置」頁面中的「主題顏色」選擇列表選取器完全相似。 listpicker應該有一個帶填充顏色的正方形和顏色名稱。 我知道如何使用綁定來獲取顏色名稱列表,但<DataTemplate>
中的<Rectangle>
標記不起作用。Silverlight中的矩形顏色數據綁定
這是Listpicker
<toolkit:ListPicker x:Name="lpkColor" Grid.Column="1" ExpansionMode="FullScreenOnly" Margin="8,12,-8,20" FullModeHeader="Select Color" Header="Color">
<toolkit:ListPicker.FullModeItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Height="50" Width="50" VerticalAlignment="Center" Fill="{Binding color}" Margin="5,30,20,20"></Rectangle>
<TextBlock Text="{Binding ColorName}" VerticalAlignment="Center" FontSize="40"></TextBlock>
</StackPanel>
</DataTemplate>
</toolkit:ListPicker.FullModeItemTemplate>
</toolkit:ListPicker>
代碼的XAML的背後是這樣的:
public class PickerObject
{
public string ColorName { get; set; }
public Color color{get;set;}
public PickerObject(string cn, Color c)
{
ColorName = cn;
color = c;
}
}
和我的MainPage類中
List<PickerObject> MyColors = new List<PickerObject>();
我的構造函數我有內部:
MyColors = new List<PickerObject>();
MyColors.Add(new PickerObject("white",Colors.White));
MyColors.Add(new PickerObject("black", Colors.Black));
MyColors.Add(new PickerObject("blue", Colors.Blue));
MyColors.Add(new PickerObject("yellow", Colors.Yellow));
MyColors.Add(new PickerObject("red", Colors.Red));
lpkColor.ItemsSource = MyColors ;
但是Listpicker中沒有顯示矩形,並且沒有顯示顏色。 我想知道我做錯了什麼,以及如何正確地做到這一點。
顯示您的xaml代碼。 – Gambit 2012-08-17 17:39:39