如何使用数据库表中的特定列更新listview? 我使用下面的代码
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的数据放在这两列中我希望列表视图只包含1列
答案 0 :(得分:0)
似乎ListView
根据插入的项目的宽度构建其列。此行为可能会导致您的问题,因此您有一些选项/解决方法可以开始使用:
正确调整ListView
的大小,以便只适合一列。如果你知道你的数据有多宽,那就可以了。
在ListView
添加一列,并根据ListView
减去4(列的总宽度)的总宽度设置宽度。之后,将列样式设置为ColumnHeaderStyle.None
并将View
设置为View.Details
listView1.View = View.Details;
listView1.Columns.Add("somecolumn");
listView1.Columns[0].Width = listView1.Width - 4;
listView1.HeaderStyle = ColumnHeaderStyle.None;
停止使用ListView
并考虑一些替代方案,例如ListBox
和DataGridView