gpt4 book ai didi

c# - 根据数据库mysql填充datagridviewcombobox

转载 作者:行者123 更新时间:2023-11-29 15:31:41 26 4
gpt4 key购买 nike


我有一个 datagridView,其中有 2 列将由数据库填充。
在数据库中我有这个:
第 1 列:名称 第 2 列:数量 第 3 列:日期


2019 年 1 月
b 2 2018
c 3 2017
2015年4月

所以我需要在组合框中显示 Name a :(1 - 2019)(4 - 2015)
这是我所做的:

using (MySqlDataAdapter sda = new MySqlDataAdapter(@"SELECT DISTINCT Name ,CONCAT(Quantite ,'PCS -' ,Date) as Conc FROM articles", MyConnexion))
{
DataTable dt = new DataTable();
sda.Fill(dt);
DTG_Bordereau.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
DTG_Bordereau.Columns[0].DataPropertyName = "Name";

DTG_Bordereau.Columns[3].Width = 300;

DTG_Bordereau.DataSource = dt;

for (int i = 0; i < dt.Rows.Count; i++)
{
var val = dt.Rows[i]["Conc"].ToString();

//check if it already exists
if (!QuantiteDisponible.Items.Contains(val))
{
QuantiteDisponible.Items.Add(val);
}

}

最佳答案

using (MySqlDataAdapter sda = new MySqlDataAdapter(@"SELECT DISTINCT Name FROM articles", MyConnexion))
{
DataTable dt = new DataTable();
sda.Fill(dt);
DTG_Bordereau.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
DTG_Bordereau.Columns[0].DataPropertyName = "Name";



DTG_Bordereau.Columns[3].Width = 300;
DTG_Bordereau.DataSource = dt;





try
{
for (int i = 0; i < dt.Rows.Count; i++)
{


QuantiteDisponible.Items.Clear();

MySqlDataAdapter sda2 = new MySqlDataAdapter("SELECT DISTINCT CONCAT(Quantite ,'PCS -' ,Date) as Conc FROM articles where Name='" + dt.Rows[i][0].ToString() + "'", MyConnexion);
DataTable dt2 = new DataTable();

sda2.Fill(dt2);
QuantiteDisponible.DataSource = dt2;

QuantiteDisponible.DisplayMember = "Conc";
QuantiteDisponible.ValueMember = "Conc";

}


}

catch
{ }



}

因此,使用这段代码,我的第一个组合框是正确的,但其他组合框采用与第一个组合框相同的值......

关于c# - 根据数据库mysql填充datagridviewcombobox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58679574/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com