2014-02-20 2 views
0

Я получаю эту ошибку «Никакая строка не может быть добавлена ​​в элемент управления DataGridView, который не имеет столбцов. Сначала нужно добавить столбцы». что я делаю неправильно здесь?C# backgroundworker, создающий datagridview и создание столбцов

 //create datagridview1 
      DataGridView dataGridView1 = new DataGridView(); 

     // DataGridViewColumn column = new DataGridViewTextBoxColumn(); 

      // Initialize the DataGridView. 
      dataGridView1.AutoGenerateColumns = false; 
      dataGridView1.AutoSize = true; 

      DataGridViewColumn column1 = new DataGridViewTextBoxColumn(); 
      column1.DataPropertyName = "Column1"; 
      column1.Name = "title"; 
      dataGridView1.Columns.Add(column1); 

      DataGridViewColumn column2 = new DataGridViewTextBoxColumn(); 
      column2.DataPropertyName = "Column2"; 
      column2.Name = "imageurl"; 
      dataGridView1.Columns.Add(column2); 

      DataGridViewColumn column3 = new DataGridViewTextBoxColumn(); 
      column3.DataPropertyName = "Column3"; 
      column3.Name = "videourl"; 
      dataGridView1.Columns.Add(column3); 

      DataGridViewColumn column4 = new DataGridViewTextBoxColumn(); 
      column4.DataPropertyName = "Column4"; 
      column4.Name = "done"; 
      dataGridView1.Columns.Add(column4); 
+2

Где вы при добавлении г ows к сетке? Можете ли вы включить код, в котором вы фактически запускаете поток BackgroundWorker? –

+0

этот код непосредственно под частным void backgroundWorker1_DoWork (отправитель объекта, DoWorkEventArgs e) { – mxadam

+0

dataGridView1.Rows.Add (заголовок, «образ», «видео», «нет»); – mxadam

ответ

0

попробовать

dataGridView1.Columns.Add("Column","Test"); 

или если вы хотите, чтобы выбрать тип coulmn

DataGridViewColumn newCol = new DataGridViewColumn(); // add a column to the grid 
DataGridViewCell cell = new DataGridViewCell(); //Specify which type of cell in this column 
newCol.CellTemplate = cell; 

newCol.HeaderText = "test2"; 
newCol.Name = "test2"; 
newCol.Visible = true; 
newCol.Width = 40; 

gridColors.Columns.Add(newCol); 

here из

Вы также можете увидеть MSDN example

+0

первый пример не работал: s – mxadam

+0

@mxadam, странно. Я проверяю его, и это работает для меня. Обратите внимание: функция «Добавить» принимает 2 параметра. один - это имя столбца, а второй - заголовок. – AsfK

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