Windowsapp store应用程序将sqlite查询写入listview的文本块

我正在开发Windows应用程序。 我正在使用sqlite数据库,我想将select查询的结果放入listview。 我的listview在这些网格中有网格和文本框。 但是当我给它们命名时,我无法在c#中定位这些文本框。 这是项目的代码示例:第一个sqlite查询:

private void Page_Loaded(object sender, RoutedEventArgs e) { string DBPath = string.Empty; DBPath = Path.Combine(Windows.Storage.ApplicationData.Current.LocalFolder.Path, "mydb.s3db"); using (var db= new SQLite.SQLiteConnection(DBPath)) { var query= db.Table(); var result= query.ToList(); foreach( var x in result ) { company frm= new company(); //addition to listview... } } } 

除了输入listview之外,一切都完美无缺。 我已经使用listview之外的文本块对其进行了测试。

和xaml:

                                                                             

对不起,很长的post,我想提供有关该计划的详细信息,然后你可以看到出了什么问题。 我将不胜感激任何帮助/反馈。

致以我的问候…

您需要使用ListView的数据绑定。

首先将您的集合绑定到ListView,如下所示:

 private void Page_Loaded(object sender, RoutedEventArgs e) { ** snip ** using (var db= new SQLite.SQLiteConnection(DBPath)) { var query= db.Table(); lv.ItemsSource = query.ToList(); } } 

之后,您可以将datatemplate内部绑定到对象上的属性。 我们假设您的公司类定义如下:

 public class Company { public string Name{get; set;} } 

然后你可以在你的ItemTemplate中做到这一点:

     ** snip **   ** snip **   ** snip **    

渲染每个项目时,它将查看当前实例(类型为company ),提取Name -property并将其作为TextBlock的值。