c# - ListView (MVVM) 中的复选框 | Xamarin 形式
问题描述
我正在 Xamarin 表单中创建 ToDo 应用程序。我在显示待办事项的列表视图中的复选框有问题。选中复选框后,我无法找到如何获取 ToDo...
XAML 中的复选框:
<CheckBox IsChecked="{Binding IsChecked, Mode=TwoWay}" Grid.Row="0" Grid.Column="1" HorizontalOptions="CenterAndExpand" VerticalOptions="CenterAndExpand" />
如果在 ViewModel 中选中复选框,则获取信息的方法:
private bool isChecked;
public bool IsChecked
{
get { return isChecked; }
set
{
if (isChecked != value)
{
isChecked = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs("IsSelected"));
App.Current.MainPage.DisplayAlert("Title", " item have been selected", "Cancel");
}
}
}
}
对于如何在 MVVM 中实施的每一个建议,我将不胜感激。
解决方案
MVVM 方法:
如果您的复选框在 List 内,那么binding property
它将在您的Model
而不是. ViewModel
要获取您可以使用的所有检查值LinQ
,Where
子句根据 bool 所在的条件从列表中获取IsChecked
数据true
子句的示例Where
可以是:
var CheckedItemList= yourList.Where(m => m.IsChecked== true).ToList();
请参阅下面的链接以了解有关 列表绑定如何在 MVVM 中工作的更多信息
推荐阅读
- apache-flink - Flink 表的状态后端
- rsa - 关于使用 RSA (openssl) 签署文件的问题
- jmespath - 使用 JMESPATH 中的值提取不同的 Key
- woocommerce - 在 WooCommerce Checkout 上禁用 Chrome 自动完成/下拉建议
- javascript - 无法在 forEach 循环中推入迭代的数组结果
- reactjs - 如何检查令牌是否未定义用于用户身份验证
- python - 在哪里可以找到 collections.defaultdict 的源代码?
- javascript - 我已经从 html 模板中复制了一个代码并相应地对其进行了修改以做出反应并对 css 做了同样的事情,但不知何故我的主要组件没有拿起 css
- yocto - Yocto - 如何配置一个包(例如 Xorg/xinit)
- ios - 如何将 [Struct] 和 [Int] 类型都传递到 [AnyObject] 数组中?