2012-02-14 2 views
1

Могу ли я сделать datagridview контейнером временных данных? Я не хочу добавлять свои данные напрямую, я просто хотел, чтобы он хранился в datagridview, как в контейнере. это возможно?Хранить временные данные в DataGridView C#

Я думаю о списке, который будет хранить выбор пользователя в поле со списком. Я не хочу добавлять его непосредственно в базу данных, потому что данные временны, пользователь может изменить/обновить свой выбор.

У меня есть отдельная кнопка, которая добавит все, когда пользователь нажмет кнопку отправки.

Любые примеры ?? предложения? Thanks

ответ

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(); 

В сетке будет отображаться одна колонка и одна строка данных.

+0

sir what Если я добавлю несколько значений в datagridview? –

+0

@rjtubera - я обновил свой ответ, чтобы показать вам, как добавить больше данных (используйте table.Rows.Add(); –

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 находит свое отражение в источнике данных. вы должны привязываться к переменной-члену класса вместо локальной переменной.

+0

Спасибо. Это то, что я ищу. :)) –

+0

Сэр, что если я добавлю содержимое мой datagrid в базу данных? как я могу получить доступ к каждой строке? –

+0

sir это не работает –

Смежные вопросы