我有两个列表框,我都绑定到相同的选定索引。这样做的原因是,在第一个中我输入一些东西,然后指定它属于哪个属性:
例如:
可与
结合使用当每个项目只出现一次但我有类似
之类的东西时,一切正常然后同步不起作用。
我试过了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造成一些混淆
<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))
答案 0 :(得分:0)
我不是从树视图中添加相同的项目,而是从所选项目中创建一个新项目,然后将其传递到列表框中。这种方式你需要不同的项目,但最后我只关心他们的Id(placeID),所以它并不重要...
希望这有助于某人...
答案 1 :(得分:0)
我在Windows Phone 7.1上遇到了同样的问题。内部异常是这样的:不支持将IsSynchronizedWithCurrentItem设置为true