嵌套ListBox:当选择子ListBox项时,是否可以恢复父ListBox项?

时间:2012-02-13 16:23:54

标签: windows-phone-7 listbox nested

我有一个嵌套的ListBox,就像一个warningListBox项,可以包含picturesListBox和audioRecordListBox。 当我选择子ListBox的一个元素(例如pictureListBox的项目)时,我不仅需要恢复所选图片项,还需要恢复父警告ListBox(warningListBox项)的项。 在multimediaListBox_SelectionChanged(对象发送者,SelectionChangedEventArgs e)中,我可以恢复所选的子项目

((System.Windows.Controls.ListBox)sender).SelectedItem

但我如何恢复PARENT warningListBox的项目?

我必须在每个ListBox子元素中添加一个具有父项ID的附加字段吗? ...或者有更好的解决方案,例如在发件人中导航或使用SelectionChanged事件的eventArgs?

等待一些建议......

Enzo Contini

1 个答案:

答案 0 :(得分:0)

最简单的方法是使数据结构与您拥有的UI类似。所以也要使数据结构嵌套。

要启用跟踪父项,请将父属性添加到子项。

这样你就可以得到这样的父项:

var parent = ((MySubitem)((System.Windows.Controls.ListBox)sender).SelectedItem).Parent;

您可能会发现维护此结构比尝试跟踪UI控件更容易。