C# Gridview - привязка выбранных столбцов из хранилища данных
У меня есть SQLM Statemente, но я не хочу отображать всю информацию в gridview (C# webforms). Как связать определенные столбцы во время выполнения на gridview?
Спасибо
3 ответа
Вы можете создать столбцы для DataGridView самостоятельно. Пример:
DataGridView dataGridView1 = new DataGridView();
BindingSource bindingSource1 = new BindingSource();
dataGridView1.ColumnCount = 2;
dataGridView1.Columns[0].Name = "FieldA";
dataGridView1.Columns[0].DataPropertyName = "FieldA";
dataGridView1.Columns[1].Name = "FieldB";
dataGridView1.Columns[1].DataPropertyName = "FieldB";
bindingSource1.DataSource = GetDataTable();
dataGridView1.DataSource = bindingSource1;
Прежде всего я бы отредактировал столбцы в Visual Studio Designer, чтобы получить нужные столбцы.
Это зависит от того, как вы извлекаете данные в DataGrid. Если вы используете SqlDataSource, я бы порекомендовал закрыть Selecting
событие. В другом случае (SqlDataReader) я бы сделал привязку во время чтения. Или вы также можете использовать Linq to Entity для получения значений, которые вы хотите, например, так:
var name = from names in context.data_table
select names;
gridview.datasource = name;
Убедитесь, что Data Bind вашей сетки после установки источника данных, как показано выше. Удачи!
Entities entities = ObjectContextManager.GetCurrentContext<AdHocReportingEntities>();
var users = from e in entities.Users
where e.State == userState'
orderby e.Name
select new { e.Name, e.State};
Grid.DataSource = users;
Grid.DataBind();`