如何将数据表中的项添加到列表视图?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何将数据表中的项添加到列表视图?相关的知识,希望对你有一定的参考价值。

我目前正在开发一个C#Windows窗体应用程序。

现在我尝试使用SQL命令从数据库中检索信息,以填写我在应用程序中需要的信息。

示例查询将是“select * from Location”

在Location表中会有诸如locationId,LocationName,districId等变量。我使用了以下代码

private void button1_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection("connectionstring");
    SqlDataAdapter ada = new SqlDataAdapter("select * from MasterLocation", con);
    DataTable dt = new DataTable();
    ada.Fill(dt);

    for (int i = 0; i < dt.Rows.Count; i++)
    {
        DataRow dr = dt.Rows[i];
        ListViewItem listitem =new ListViewItem(dr["pk_Location_ID"].ToString());
        listitem.SubItems.Add(dr["var_Location_Name"].ToString());
        listitem.SubItems.Add(dr["fk_int_District_ID"].ToString());
        listitem.SubItems.Add(dr["fk_int_Company_ID"].ToString());
       listView1.Items.Add(listitem);
    } 

输出是:

但它应该是这样的:

答案

你必须改变一些代码

private void button1_Click(object sender, EventArgs e)
{
    listView1.View = View.Details;
    SqlConnection con = new SqlConnection("connectionstring");
    SqlDataAdapter ada = new SqlDataAdapter("select * from MasterLocation", con);
    DataTable dt = new DataTable();
    ada.Fill(dt);

    for (int i = 0; i < dt.Rows.Count; i++)
    {
        DataRow dr = dt.Rows[i];
        ListViewItem listitem = new ListViewItem(dr["pk_Location_ID"].ToString());
        listitem.SubItems.Add(dr["var_Location_Name"].ToString());
        listitem.SubItems.Add(dr["fk_int_District_ID"].ToString());
        listitem.SubItems.Add(dr["fk_int_Company_ID"].ToString());
       listView1.Items.Add(listitem);
    } 
另一答案

添加了以下代码

listView1.View = View.Details;

它起作用了。

另一答案
 private void FormView_Load(object sender, EventArgs e)
  {
    sample = new DataTable(); //Sample Data
            sample.Columns.Add("id", typeof(string));
            sample.Columns.Add("name", typeof(string));
            sample.Rows.Add("1", "apple");
            sample.Rows.Add("2", "acer");
            sample.Rows.Add("3", "alpha");
            sample.Rows.Add("4", "beat");
            sample.Rows.Add("5", "ball");
            sample.Rows.Add("6", "cat");
            sample.Rows.Add("7", "catch");
            sample.Rows.Add("10", "zebra");

            listViewEx1.View = View.Details;
            listViewEx1.Columns.Add("id");
            listViewEx1.Columns.Add("name");
  }



         listViewEx1.Items.Clear();

            listViewEx1.FullRowSelect = true;

            foreach (DataRow row in sample.Rows)
            {
                    ListViewItem item = new ListViewItem(row["id"].ToString());
                    item.SubItems.Add(row["name"].ToString());
                    listViewEx1.Items.Add(item); //Add this row to the ListView
             }

以上是关于如何将数据表中的项添加到列表视图?的主要内容,如果未能解决你的问题,请参考以下文章

如何将列表视图中的数据从一个片段发送到另一个片段

Android:NullPointerException 无法将数据库加载到片段内的列表视图中

如何将可扩展列表视图的选定子视图数据从片段发送到父活动?

如何从android studio中的recycler视图将数据添加到SQLite数据库中

将数据从片段列表视图项传递到活动字符串变量 onitemclicklistener

如何将回收器视图添加到片段