ContentPage根据第二选择更新第一个StackLayout

时间:2016-08-25 15:39:01

标签: listview c#-4.0 xamarin xamarin.forms


我在contentPage(Xamarin表单)上有两个StackLayout:StackLayoutA,StackLayoutB
StackLayoutA包含:ListView,BtnForStackLayoutB
StackLayoutB包含:选择标准(例如2个按钮:BtnA,BtnB)
两者都添加在Main ContentPage的StackLayout中。

BtnForStackLayoutB是Button,它使StackLayoutB.IsvIsible = True / False;

基于我的点击BtnA / BtnB我想从StackLayoutA更新ListView。 我正在使用以下代码更新listview的ItemSource但在页面上看不到

lisview.ItemsSource = null;
lisview.BeginRefresh();
lisview.ItemsSource = _SelectionRuleList;
lisview.EndRefresh();

我错过了任何其他设置吗?

1 个答案:

答案 0 :(得分:0)

根据描述,我可以看到你正在使用Xamarin.Forms 使用Xamarin.Forms开发的应用程序可以使用ViewModels(MVVM)。

根据要求,我能想到的只是在MainViewModel中有一个List,并且获得了ListView的保密。

现在,当单击BtnA / BtnB时,各个函数实际上可以更新MainViewModel中的List,从而更新ListView。

我创建了一个展示功能的示例: https://github.com/anubhavranjan/ListViewTest

您可以在here中了解有关数据绑定的更多信息。