日期:2014-05-18  浏览次数:21124 次

显示listview选中多行的内容

有个listView1,已经绑定了Northwind数据库中的某几列。
现在想根据前面选中的复选框,来生成一个DataSet或DataTable。

比如,我选中了1,2,5,9这4行数据,那么我想把选中的行生成在dataset中。请问如何实现。
请附代码。谢谢。

------解决方案--------------------
DataSet ds = new DataSet();
DataTable dt = new DataTable();
dt.Columns.Add("列名");
for (int i = 0; i < this.listView1.SelectedItems.Count; i++)
{
DataRow dr = dt.NewRow();
dr["列名"] = this.listView1.SelectedItems[i].Text;
dt.Rows.Add(dr);
}
ds.Tables.Add(dt);
------解决方案--------------------
你的图,大家看不到,你开通一下CSDN空间,图片上传到空间上,然后贴出地址,大家就能看到了。
------解决方案--------------------
DataTable dt = new DataTable();//全局变量,DT测试为3列

private void button1_Click(object sender, EventArgs e)
{
dt.Clear();
for (int i = 0; i < this.listView5.Items.Count; i++)
{
if (listView5.Items[i].Checked)
{
DataRow dr = dt.NewRow();
dr["ProductID"] = this.listView5.Items[i].SubItems[0].Text;
dr["ProductCode"] = this.listView5.Items[i].SubItems[1].Text;
dr["ProductName"] = this.listView5.Items[i].SubItems[2].Text;
dt.Rows.Add(dr);
}
}
dataGridView1.DataSource = dt;
}
------解决方案--------------------
DataTable dt = new DataTable();//全局变量,DT测试为3列

private void button1_Click(object sender, EventArgs e)
{
dt.Clear();
for (int i = 0; i < this.listView5.Items.Count; i++)
{
if (listView5.Items[i].Checked)
{
DataRow dr = dt.NewRow();
dr["ProductID"] = this.listView5.Items[i].SubItems[0].Text;
dr["ProductCode"] = this.listView5.Items[i].SubItems[1].Text;
dr["ProductName"] = this.listView5.Items[i].SubItems[2].Text;
dt.Rows.Add(dr);
}
}
dataGridView1.DataSource = dt;
}
------解决方案--------------------
你这是在找代码代工啊,要个思路不就行了,这个貌似比较好写