2016-08-16 4 views
0

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

established Column

Это мой код, чтобы заполнить колонку, но я не знаю, что делать, чтобы заполнить этот конкретный один столбец, используя имя или имя_поль или независимо от того, что требуется.

GridControl1.DataSource = Nothing 

SQL.ExecQuErY("SELECT nombre FROM productos") 

If Not String.IsNullOrEmpty(SQL.Exception) Then MsgBox(SQL.Exception) : Exit Sub 

For Each row As DataRow In SQL.DBDS.Tables(0).Rows 

     ?????? THIS IS WHERE IT'S SUPPOSED TO GO THE INSTRUCTION TO FILL THE COLUMN ?????? 

Next 
+0

Вы пробовали заменив цикл с 'GridControl1.DataSource = SQL.DBDS.Tables (0)'. Это должно привязать данные к вашей сетке. Нет необходимости копировать строки за строкой. – FloatingKiwi

+0

@FloatingKiwi да, спасибо, на самом деле это то, как я использую для заполнения gridcontrol, когда у меня нет столбцов в gridview уже, но я хочу заполнить этот конкретный столбец, который устанавливается с данными запроса. –

+0

Devexpress довольно внимательно относится к сетке окон, поэтому в этом я должен установить 'DataGridView1.AutoGenerateColumns = false' и' myColumn.DataPropertyName = "nombre" ', и он должен настроить привязку для вас. – FloatingKiwi

ответ

0

Попробуйте связать данные в сетку, как это:

Sql.ExecQuErY("SELECT nombre As colNombre FROM productos") 
GridControl1.DataSource = Sql.DBDS.Tables(0) 

FieldName колонки в GridControl должны иметь такое же имя поля в DataSource.

или вы можете изменить FieldName колонки в GridControl для nombre и использовать ваш первоначальный запрос:

Sql.ExecQuErY("SELECT nombre FROM productos") 
GridControl1.DataSource = Sql.DBDS.Tables(0) 
+0

ДА! Это ответ, который я искал, спасибо. Он отлично работает! –

+0

Я рад это слышать, спасибо тоже :) –

0

Обратитесь к этому answer на другой поток SO.

How to add new line of row in devexpress gridcontrol?(WinForms C#)

Он может направить вас на правильный путь реализации. У вас должен быть резервный источник данных, назначенный элементу управления сеткой, чтобы добавить строку во время выполнения и присвоить только одно значение столбца сетке, используя метод SetRowCellValue.

Есть много вопросов о поддержке DevExpress, связанных с такой реализацией. Пожалуйста, следуйте приведенным ниже ссылкам:
Creating Columns and Binding Them to Data Fields
ColumnView.AddNewRow Method
Add new row to xtragrid through code Add New Row to GridView
Adding new row to gridview
Adding gridView columns at runtime GridView: Add column in runtime
how to add columns to xtragrid dynamically at runtime and also how to add repository items to those columns dynamically??

Надеется, что это поможет ..