C# datagridview中combox下拉时候加载数据库某列数值
时间: 2024-03-27 18:40:06 浏览: 16
您可以使用DataGridViewComboBoxColumn的DataSource属性和DisplayMember属性来实现这个功能。首先,您需要将数据库中该列的数据读取到一个DataTable中,然后将这个DataTable赋值给DataGridViewComboBoxColumn的DataSource属性。接下来,将该列的字段名赋值给DataGridViewComboBoxColumn的DisplayMember属性,这样下拉框中就会显示该列的数值。
以下是一个示例代码:
``` csharp
// 假设您的DataGridView中有一个名为dataGridViewComboBoxColumn的ComboBox列
// 首先,读取数据库中该列的数据到一个DataTable中
DataTable dt = new DataTable();
using (SqlConnection conn = new SqlConnection("连接字符串"))
{
conn.Open();
string sql = "SELECT DISTINCT 列名 FROM 表名";
SqlCommand cmd = new SqlCommand(sql, conn);
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
adapter.Fill(dt);
}
// 将该DataTable赋值给DataGridViewComboBoxColumn的DataSource属性
dataGridViewComboBoxColumn.DataSource = dt;
// 将该列的字段名赋值给DataGridViewComboBoxColumn的DisplayMember属性
dataGridViewComboBoxColumn.DisplayMember = "列名";
```
这样,在DataGridView中下拉该列时,就会显示数据库中该列的数值了。