将临时数据存储在DataGridView C#上

时间:2012-02-14 23:06:44

标签: c# winforms datagridview

我可以将datagridview作为临时数据的容器吗?我不想直接添加我的数据我只是希望它像容器一样存储在datagridview中。 那可能吗?

我正在考虑一个列表框,它会将用户的选择存储在组合框中。我不想将它直接添加到数据库中,因为数据是临时的,用户可能会更改/更新他的选择。

我有一个单独的按钮,当用户点击提交按钮时,它会添加所有按钮。

任何例子?建议?感谢

2 个答案:

答案 0 :(得分:1)

您可以将DataGridView绑定到对象列表。

以下是我的测试代码(Vs2010 winform):

    public class Location
    {
        public int X { set; get; }
        public int Y { get; set; }
    }

    private void button1_Click(object sender, EventArgs e)
    {
          List<Location> locations1 = new List<Location>()
            {
                new Location(){X= 100, Y = 200},
                new Location(){X= 300, Y = 400},
                new Location(){X= 600, Y = 500},
                new Location(){X= 700, Y = 800}    
            };

          dataGridView1.DataSource = locations1;
    }

如果要将DataGridView中的更改反映在数据源中。你必须绑定到类成员变量而不是局部变量。

答案 1 :(得分:0)

是。您必须首先将数据存储在datagridview可以理解的对象中。例如:

using System.Data;
DataTable table = new DataTable(); // <-- temp. in memory table of data
table.Columns.Add("col1");
table.Rows.Add("some data");
table.Rows.Add("some more data");
table.Rows.Add("and more");
myDataGridView.DataSource = table;
myDataGridView.DataBind();

网格将显示一列和一行数据。