[英]C# WPF using Caliburn.Micro: How can I convert an IEnumerable to BindableCollection?
我正在按照有关将 C# 项目连接到 SQLite 数据库的指南进行操作。 这是该指南的链接: https://youtu.be/ayp3tHEkRc0?t=1765
我的代码与视频中创建的代码非常相似。 但是,我正在使用名为 CaliburnMicro 的框架重新创建项目。 我对 CaliburnMicro 的理解是它通过利用 model 属性和 UI 组件的相同名称来“自动化”一些数据绑定。
我在我的项目中使用的 model 是 BindableCollection<> 类型,正如 Tim Corey 的另一个教程中所推荐的那样。 这是我想将数据库查询结果转换成的类型。
指南说数据查询的结果是一个IEnumerable。 他使用内置方法将其转换为 List<> 类型。 但是,没有这种方法可以转换为 CaliburnMicro 的 BindableCollection<> 类型。
public static BindableCollection<PersonModel> LoadPeople()
{
using (IDbConnection cnn = new SQLiteConnection(LoadConnectionString()))
{
var output = cnn.Query<PersonModel>("SELECT * FROM Person", new DynamicParameters());
return output.ToBindableCollection()
}
}
我的问题是,如何将 IEnumerable 结果转换为 BindableCollection<> 数据类型? 提前致谢。
public static class Extensions
{
public static BindableCollection<T> ToBindableCollection<T>(this IEnumerable<T> source)
{
return new BindableCollection(source);
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.