2

因此,我一直在开发 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>

我正在插入具有以下元素的类的元素(所有公共都具有适当的获取和设置)

string name
string limit
string alert
SolidColorBrush accent

插入元素时,我只在列表中看到该类的 ToString(),因为未应用绑定。另一方面,如果我使用ListBox具有相同绑定的控件,那么一切正常。

另一个有趣的事实是,当我拥有 NuGet 2.0 时,上述绑定工作正常。但是我今天更新了 NuGet 包,从那以后它就停止工作了,我收到了一个Invalid XAML警告,但它编译得很好。

我不知道为什么这在以前工作时不起作用。有人可以告诉我这是 NuGet 包的错误还是我的代码有问题?

谢谢。

4

2 回答 2

2

我遇到了同样的问题,我通过使用 windows phone 8 sdk 上可用的新的 Long List 多选器控件解决了这些问题......

它应该可以解决您的所有问题!

于 2013-01-15T00:19:06.277 回答
0

这是因为 Phone 工具包的 WindowsPhone 8 项目不包含 MultiselectList 的样式定义,使用 TargetType“controls:MultiselectList”将样式定义从 WindowsPhone 7 项目复制到 Themes/Generic.xaml 应该可以工作。

于 2013-09-22T12:26:19.147 回答