C# 如何使用mysql中的数据更新listview
如何使用数据库表中的特定列更新listview? 我使用了下面的代码C# 如何使用mysql中的数据更新listview,c#,mysql,winforms,C#,Mysql,Winforms,如何使用数据库表中的特定列更新listview? 我使用了下面的代码 String con = "datasource = localhost; port=3306;username=root;password=****"; MySqlConnection mycon = new MySqlConnection(con); string qw = "select wine from cms.menulist"; MySqlDataAdapt
String con = "datasource = localhost; port=3306;username=root;password=****";
MySqlConnection mycon = new MySqlConnection(con);
string qw = "select wine from cms.menulist";
MySqlDataAdapter da = new MySqlDataAdapter(qw, mycon);
DataTable dt1 = new DataTable();
da.Fill(dt1);
foreach (DataRow row in dt1.Rows)
{
string wine = string.Format("{0}", row.ItemArray[0]);
listView1.Items.Add(wine);
}
但是这段代码生成了一个包含两列的列表视图。mysql中的数据放在这两列中。我希望列表视图只包含一列似乎
列表视图
正在根据插入的项目的宽度构建它们的列。这种行为可能会导致您的问题,因此您有一些选项/解决方法可以开始:
列表视图的大小,以便只适合一列。如果您知道数据的宽度,这是可能的
列表视图中
,并根据列表视图的总宽度减去4(对于该列)设置其宽度。之后,将列样式设置为ColumnHeaderStyle.None
,并将视图设置为视图。详细信息
listView1.View = View.Details;
listView1.Columns.Add("somecolumn");
listView1.Columns[0].Width = listView1.Width - 4;
listView1.HeaderStyle = ColumnHeaderStyle.None;
ListView
,考虑一些替代方案,如ListBox
和DataGridView
即使该服务在本地主机上运行,也不应在此处发布密码。顺便问一下,你这里有什么问题?据我所知,您正在查询数据库并收到一个名为
wine
的特定列。我没有看到其他专栏。如果数据量太大,listview可能会拆分为一个新列?是的,listview会拆分为两列。否,数据量不高,其值小于50感谢选项2起作用。。是否有其他方法可以根据加载的数据自动调整listview的大小。因为目前它只显示了几行,我必须向下滚动才能看到其余的。我可以不用滚动查看所有数据吗?看,嗯,这很难做到。是否有其他方法在表单上显示数据库表中的列。我不想使用datagridview,因为我不喜欢它的外观。我希望数据以简单的表格格式显示,只包含一列。我只知道DataGridView
,因为这通常是实现这一点的方法。你可以对此做些研究。如果您关心外观,请考虑WPF作为应用程序的框架。我最初不喜欢DigaGrdVIEW,因为左边的灰色空间。刚刚研究并找到了消除灰色区域的方法。现在,我可以查看datagridview中检索到的所有数据,而无需使用滚动条。因为目前我只能查看其中的几行。是否有一种方法可以让datagridview自行调整大小以显示所有行?