Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将值从多个ListView传递到Datagridview_C#_C# 4.0_Listview_Datagridview - Fatal编程技术网

C# 如何将值从多个ListView传递到Datagridview

C# 如何将值从多个ListView传递到Datagridview,c#,c#-4.0,listview,datagridview,C#,C# 4.0,Listview,Datagridview,我有两个列表视图和一个数据网格视图 一个列表视图有三列ProductCode,ProductName,ProductPrice,第二个列表视图有两列goodown Name,goodown code 当我单击datagridview的第一列product时,我希望列表视图可见,然后我希望将列表视图的选定值按相同顺序传递给datagridview 当我单击datagridview中的goodown列时,goodown listview应可见,然后将goodown listview的选定值传递给da

我有两个
列表视图
和一个
数据网格视图

一个列表视图有三列
ProductCode,ProductName,ProductPrice
,第二个列表视图有两列
goodown Name,goodown code

当我单击
datagridview
的第一列
product
时,我希望
列表视图可见
,然后我希望将
列表视图
的选定值按相同顺序传递给
datagridview

当我单击datagridview中的
goodown
列时,
goodown listview
应可见,然后将
goodown listview
的选定值传递给
datagridview
中的
goodown
列。我该怎么做


以下是一些可能有帮助的代码:

public partial class Form2 : Form
{
    public Form2()
    {
        InitializeComponent();
        for (int i = 1; i < listView1.Items.Count; i++)
        {
            dataGridView1.Rows.Add();
        }

    }

    private void dataGridView1_ColumnHeaderMouseClick(object sender, DataGridViewCellMouseEventArgs e)
    {
        //Decide which column corresponds to the one clicked
        switch (e.ColumnIndex)
        {
            case 0:
                FillColumn(listView2, 0, e.ColumnIndex);
                break;
            case 1:
                FillColumn(listView1, 1, e.ColumnIndex);
                break;
            case 2:
                FillColumn(listView2, 1, e.ColumnIndex);
                break;
            case 3:
                FillColumn(listView1, 0, e.ColumnIndex);
                break;
            case 4:
                FillColumn(listView1, 2, e.ColumnIndex);
                break;
        }
    }
    //Take the corresponding listview, the listview column, and the dgv column
    //and populate the dgv with the listview data
    private void FillColumn(ListView lv, int lvcolumn, int dgvcolumn)
    {
        lv.Visible = true;            
        foreach (ListViewItem lvi in lv.Items)
        {
            dataGridView1.Rows[lvi.Index].Cells[dgvcolumn].Value = lvi.SubItems[lvcolumn].Text;
        }
    }
}
公共部分类表单2:表单
{
公共表格2()
{
初始化组件();
对于(int i=1;i
它尝试执行OP要求的操作,包括解释。嗯