当一个项目插入两次时,列表框选择错误

本文关键字:列表 选择 两次 错误 一个 项目 插入 | 更新日期: 2023-09-27 18:27:50

我有两个列表框,它们都绑定到同一个选定索引。原因是在第一个中,我输入了一些内容,然后指定它属于哪个属性:

例如:

  • Bird

可与结合使用

  • House
  • Garder
  • 客厅

当每个项目只出现一次时,一切都很好,但当我有类似的东西时

  • 狗舍
  • 鱼屋

那么同步就不起作用了。我尝试过IsSynchronizedWithCurrentItem="True",但打开页面时出现了异常。

这是列表框的代码

<ListBox BorderBrush="{x:Null}" Grid.Column="0" HorizontalAlignment="Stretch"
         ItemsSource="{Binding Animals}"
         SelectedItem="{Binding SelectedListBoxItem,Mode=TwoWay}" 
         SelectedIndex="{Binding SelectedIndex,Mode=TwoWay}"
         ItemTemplate="{StaticResource ListBoxItemTemplate}"/>
<ListBox BorderBrush="{x:Null}" Grid.Column="1" HorizontalAlignment="Stretch"
         ItemsSource="{Binding Places}"
         SelectedIndex="{Binding SelectedIndex,Mode=TwoWay}"
         ItemTemplate="{StaticResource ListBoxItemTemplate}"/>

只是为了不引起对数据模板的一些混淆

<DataTemplate x:Key="ListBoxItemTemplate">
    <TextBlock Text="{Binding Name}" Height="15"/>
</DataTemplate>

编辑:当我想将其设置为true时,我在设计器中看到以下消息

[Selector_IsSynchronizedWithCurrentItemCannotSetToTrue] Arguments: Debugging resource strings are unavailable. Often the key and arguments provide sufficient ....

两个列表框中的项目数始终相同。

例外情况(网页错误)是通用

Line: 1 Error: Unhandled Error in Silverlight Application Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED))

当一个项目插入两次时,列表框选择错误

我没有总是从树视图中添加相同的项目,而是从所选项目创建一个新项目,然后将其传递到列表框中。这样你就可以处理不同的项目,但最后我只关心它们的Id(placeID),所以这无关紧要。。。

希望这能帮助到别人。。。

我在windows phone 7.1上遇到了同样的问题。内部异常类似于:不支持将IsSynchronizedWithCurrentItem设置为true