将ListBoxItem.ItemSelected绑定到Silverlight中的绑定项

将ListBoxItem.ItemSelected绑定到Silverlight中的绑定项,silverlight,mvvm,itemcontainerstyle,Silverlight,Mvvm,Itemcontainerstyle,我正在使用带有Silverlight 4的MVVM模式将待办事项集合绑定到列表框 每个TODO实体上都有一个属性IsSelected。这允许在绑定回ViewModel的UI中进行多个选择。同时,ViewModel所做的任何更改都会反映在视图中 我基本上是在尝试做以前的事情 不幸的是,在Silverlight(与WPF相反)中,我找不到一种方法来使用这个模板,因为在SL4中 然而,与任何其他方法不同,这似乎是双向绑定选定项列表最可靠的方法 如何用codebehind或XAML表示此绑定?我知道

我正在使用带有Silverlight 4的MVVM模式将待办事项集合绑定到列表框

每个
TODO
实体上都有一个属性
IsSelected
。这允许在绑定回ViewModel的UI中进行多个选择。同时,ViewModel所做的任何更改都会反映在视图中

我基本上是在尝试做以前的事情

不幸的是,在Silverlight(与WPF相反)中,我找不到一种方法来使用这个模板,因为在SL4中


然而,与任何其他方法不同,这似乎是双向绑定选定项列表最可靠的方法


如何用codebehind或XAML表示此绑定?

我知道的最简单的方法是重载DataTemplate并使其看起来像ListBoxItem选择。我使用Blend 4.0 Silverlight SDK中的DataStateBehavior将IsSelected属性与正确的外观联系起来

<i:Interaction.Behaviors>
    <ei:DataStateBehavior Binding="{Binding IsSelected, Mode=TwoWay}" Value="True" TrueState="Selected" FalseState="Unselected"/>                   
</i:Interaction.Behaviors>


我没有粘贴整个内容,而是链接到我添加到博客的帖子。

我知道的最简单的方法是重载数据模板,使其看起来像ListBoxItem选择。我使用Blend 4.0 Silverlight SDK中的DataStateBehavior将IsSelected属性与正确的外观联系起来

<i:Interaction.Behaviors>
    <ei:DataStateBehavior Binding="{Binding IsSelected, Mode=TwoWay}" Value="True" TrueState="Selected" FalseState="Unselected"/>                   
</i:Interaction.Behaviors>


我没有粘贴整个内容,而是链接到我添加到博客中的一篇文章。

+1 mate,我正是以这种方式实现了一些东西,你的博客文章帮助我确认了它会起作用!;)这在WPF中似乎无法正常工作。这是WPF错误吗?由于某些原因,填充颜色不会显示在最初选定的人员上。直到我手动取消选中并重新检查该框,颜色才会显示。已验证它在Silverlight中工作。您不应该像原始问题所述,在WPF中需要此解决方案。如果您遇到问题,我建议您按照问题中的答案链接进行操作,或者发布一个新问题,详细说明您所看到的内容。+1伙计,我正是以这种方式实施某些事情的,您的博客文章帮助我确认了这一点!;)这在WPF中似乎无法正常工作。这是WPF错误吗?由于某些原因,填充颜色不会显示在最初选定的人员上。直到我手动取消选中并重新检查该框,颜色才会显示。已验证它在Silverlight中工作。您不应该像原始问题所述,在WPF中需要此解决方案。如果你有问题,我建议你按照问题中的答案链接,或者发布一个新的问题,详细说明你看到了什么。