这是我的数据库表。现在我想结合Branch_Id,Acc_no和Acc_Type使它看起来像000178963503或000211111102并显示在下拉列表中 我的代码是
string[] account_number;
string account;
for (int j = 0; j < dtAcc.Rows.Count;j++)
{
account = Convert.ToString(dtAcc.Rows[j][2])+Convert.ToString(dtAcc.Rows[j][5]) + Convert.ToString(dtAcc.Rows[j][3]); ///Account Number
account_number =account.Split(' ');
}
Drp_AccType.DataSource = account_number;
Drp_AccType.DataBind();
由于
答案 0 :(得分:2)
我不确定您使用account_number =account.Split(' ');
//here is the list which will be source of combo box
List<String> accounts = new List<String>();
//go through each row
for (int j = 0; j < dtAcc.Rows.Count;j++)
{
//combine branch, account no and type
String account = Convert.ToString(dtAcc.Rows[j]["Branch_Id"]) + Convert.ToString(dtAcc.Rows[j]["Acc_no"]) + Convert.ToString(dtAcc.Rows[j]["Acc_Type"]); ///Account Number
//add account/row record to list
accounts.Add(account);
}
//bind combo box
Drp_AccType.DataSource = accounts;
Drp_AccType.DataBind();
答案 1 :(得分:0)
从查询中的数据库中选择时,您可以连接字符串
例如:从tablename中选择Branch_Id + Acc_no + Acc_Type作为col1
代码:
DataSet ds=GetDataSet("select Branch_Id + Acc_no + Acc_Type from tablename as col1");
Drp_AccType.DataSource = ds;
Drp_AccType.DataTextField="col1"
Drp_AccType.DataValueField="col1"
Drp_AccType.DataBind();
答案 2 :(得分:0)
首先,你不能直接分配给'account_number'因为它是一个数组,你将不得不使用索引即。
account_number[j] = account;
此外,您必须将数组初始化为它将保留的项目数量,因为如果您尝试访问不在数组中的项目,您将收到“访问冲突错误”
我宁愿使用这种方法,那么你不需要使用数组;
string account;
Drp_AccType.Items.Clear(); //This removes previous items because you are not using
//DataBind method
for (int j = 0; j < dtAcc.Rows.Count;j++)
{
account = Convert.ToString(dtAcc.Rows[j][2])+Convert.ToString(dtAcc.Rows[j][5]) + Convert.ToString(dtAcc.Rows[j][3]); ///Account Number
Drp_AccType.Items.Add(account); //Add directly to
//dropdown box
}