在MasterPage中,有2个Frame。 HomePage位于第一帧 - >
<Page.DataContext>
<viewmodel:HomeVM/>
</Page.DataContext>
<ListView x:Name="lstHome" SelectedItem="{Binding lstHome_ItemClick}"
Margin="10" ItemsSource="{Binding statusList}">
在HomeVM中:
/// <summary>
/// ItemClick of ListView
/// </summary>
private Status _lstHome_ItemClick;
public Status lstHome_ItemClick
{
get
{
return _lstHome_ItemClick;
}
set
{
if(_lstHome_ItemClick==value)
{
return;
}
_lstHome_ItemClick = value;
//Excute the below code when the selection of listview has changed
ItemClick(_lstHome_ItemClick);
PropertyChanged?.Invoke(this,new PropertyChangedEventArgs("lstHome_ItemClick"));
}
}
public event PropertyChangedEventHandler PropertyChanged;
点击Listview上的项目&gt;不要打电话给lstHome_ItemClick。为什么呢?
答案 0 :(得分:1)
将binding
设为TwoWay
。在UWP the default上OneWay
。
<ListView x:Name="lstHome" SelectedItem="{Binding lstHome_ItemClick, Mode=TwoWay}"
Margin="10" ItemsSource="{Binding statusList}" />