所以我一直在研究Windows Phone 8应用程序,我在将数据绑定到工具包时遇到了一些问题:MultiselectList。我有的XAML是
<toolkit:MultiselectList x:Name="CatCardList">
<toolkit:MultiselectList.ItemTemplate>
<DataTemplate>
<StackPanel Tap="ListItemTap" Orientation="Horizontal" Height="120">
<Rectangle Height="100" Width="100" Fill="{Binding accent}"/>
<StackPanel>
<TextBlock Text="{Binding name}"/>
<TextBlock Text="{Binding limit}"/>
<TextBlock Text="{Binding alert}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</toolkit:MultiselectList.ItemTemplate>
</toolkit:MultiselectList>
我正在插入一个具有以下元素的类的元素(所有公共元素都有适当的get和set)
string name
string limit
string alert
SolidColorBrush accent
插入元素时,我只在列表中看到该类的ToString(),因为未应用绑定。另一方面,如果我使用具有相同绑定的ListBox
控件,那么一切正常。
另一个有趣的事实是,当我使用NuGet 2.0时,上述绑定工作正常。但是我今天更新了NuGet软件包,从那时起它就停止了工作,我收到了Invalid XAML
警告,但编译得很好。
我不知道为什么以前工作时这不起作用。有人可以告诉我这是否是NuGet包的错误或我的代码有问题吗?
感谢。
答案 0 :(得分:2)
我遇到了同样的问题,我通过使用Windows Phone 8 sdk上提供的新的Long List多选择器控件解决了这些问题......
它应该解决你所有的问题!
答案 1 :(得分:0)
这是因为Phone工具包的WindowsPhone 8项目不包含MultiselectList的样式定义, 使用TargetType“controls:MultiselectList”从WindowsPhone 7项目复制样式定义到Themes / Generic.xaml应该有效。