【发布时间】:2013-06-12 17:36:54
【问题描述】:
我在 Windows 应用商店应用中使用 Caliburn Micro。
我有一个 ListView,它有一个 SelectedItem,在我第一次使用它时就可以使用。但是,当我清除 ListView 并将其重新绑定到另一个 Collection 时,所选项目不再显示为选中状态。
已正确设置 selectedItem 属性,因为我可以打断点,并且一切正常,只是在我清除集合后视图没有使用所选项目更新。
可能出了什么问题?
谢谢。
编辑:
查看代码:
<ListView x:Name="DetailNotes"
ItemsSource="{Binding DetailNotes}"
SelectedItem="{Binding SelectedDetailNote}"
ItemTemplate="{StaticResource Notes600ItemTemplate}"
IsItemClickEnabled="True"
caliburn:Message.Attach="[Event ItemClick] = [DetailNoteSelected($eventArgs)]"/>
ViewModel 代码:
(...)
private Note selectedDetailNote;
public Note SelectedDetailNote
{
get { return this.selectedDetailNote; }
set
{
this.selectedDetailNote = value;
this.NotifyOfPropertyChange(() => this.SelectedDetailNote);
}
}
(...)
public void DetailNoteSelected(ItemClickEventArgs eventArgs)
{
Note n = (Note)eventArgs.ClickedItem;
this.SelectedDetailNote = n;
}
【问题讨论】:
-
你能贴一些代码吗?
-
是的,我可以。已更新问题。
-
对不起。我认为问题与我正在清除集合有关,但问题只是我使用了一些显式绑定。在我删除它之后,一切正常。
标签: c# windows-store-apps winrt-xaml caliburn.micro