我刚接触c#,尝试将mysql数据库中的数据显示到listview,但一直失败。
通过这些编码,我没有得到任何错误,但没有数据显示在列表视图时,我运行程序。
请给我建议和帮助,谢谢
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace sql_to_listview
{
public partial class Form1 : Form
{
MySqlConnection cn = new MySqlConnection("Data Source=localhost;Initial
Catalog=rfiddb;uid=username;pwd=password;");
MySqlCommand cmd = new MySqlCommand();
MySqlDataReader dr;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
cn.Open();
cmd.CommandText = "select * from data";
cmd.Connection = cn;
dr = cmd.ExecuteReader();
while(dr.Read())
{
ListViewItem lv = new ListViewItem(dr[0].ToString());
lv.SubItems.Add(dr[1].ToString());
lv.SubItems.Add(dr[2].ToString());
lv.SubItems.Add(dr[3].ToString());
listView1.Items.Add(lv);
}
cn.Close();
}
}
}
数据表如下所示
2条答案
按热度按时间wgx48brx1#
你以前有没有试过这种东西?
https://stackoverflow.com/a/4018147/5209563
6ie5vjzr2#
我相信这就是你想要达到的目标。
如果是,则需要设置
ListView
的View
属性到Details
并添加Columns
到ListView
.以下是您应该使用的代码:
查看代码后更新
用这个方法替换窗体加载方法。一旦您了解了要做什么,就用mysql代码替换示例数据。