0

我正在为 Windows Phone 创建一个应用程序,我需要为其创建一个使用 SQLite 的数据库连接。从这个链接我已经执行了查询: http: //www.codeguru.com/csharp/.net/wp7/using-sqlite-in-your-windows-phone-application.htm

这是代码:

private void btncreate_Click(object sender, RoutedEventArgs e)
{
    if (MySqlLiteDB == null)
    {
        MySqlLiteDB = new SQLiteConnection("MyTestDB");
        MySqlLiteDB.Open();
        MessageBox.Show("Connection opened Successfully!!!");

    }
}

private void btnpopulate_Click(object sender, RoutedEventArgs e)
{
    SQLiteCommand cmd=MySqlLiteDB.CreateCommand("Create table student(id int primary key,name text,zipcode numeric(7))");
    int i = cmd.ExecuteNonQuery();

    int id = 0;
    for (int j = 0; j < 20; j++)
    {
        id++;
        string name = "Name" + id;
        int zipcode = 98000 + id;

        cmd.CommandText = "Insert into student(id,name,zipcode) values(" + id + ",\"" + name + "\"," + zipcode + ")";
      i =  cmd.ExecuteNonQuery();
    }


    MessageBox.Show("Insert successful");

}

private void btnclear_Click(object sender, RoutedEventArgs e)
{
    SQLiteCommand cmd = MySqlLiteDB.CreateCommand("drop table student");
    int i = cmd.ExecuteNonQuery();
    MessageBox.Show("Data Cleared successfully");

}


private void btnclose_Click(object sender, RoutedEventArgs e)
{
    if (MySqlLiteDB != null)
    {
        MySqlLiteDB.Dispose();
        MySqlLiteDB = null;
        MessageBox.Show("Connection closed");

    }
}

但现在我需要从数据库表中检索数据并使用 select 语句将其绑定到网格我该怎么做?我想在网格中显示表格数据有没有办法将数据绑定到网格。

4

1 回答 1

1

在代码中添加以下函数和类

public class student
{
    public int id {get;set;}
    public string name {get;set;}
    public long zipcode {get;set;}
}

SelectFromStudent()
{
    string query="select id,name,zipcode from student";
    List<student> studentList = SelectFromTable<student>(query);
}

List<T> SelectFromTable<T>(String statement) where T : new()
{
    SQLiteCommand cmd = MySqlLiteDB.CreateCommand(statement);
    var lst = cmd.ExecuteQuery<T>();
    return lst.ToList<T>();
}

您不能在 windows phone 应用程序中使用网格绑定数据。还有另一个控件可以做这种操作 ListBox。您可以编辑 ListBox 的 Itemtemplate。ListBox 具有 itemsource 属性。

于 2013-11-08T14:14:53.470 回答