【发布时间】:2019-04-20 22:09:18
【问题描述】:
使用 selectedIndexChange for Combobox 填充 Access 数据库中的文本框。
我尝试过使用以下方法:
txtEventDate.Text = cboEventName.SelectedValue.ToString();
但它不会从选定的数据中填充。
// clear out listbox
cboEventName.Items.Clear();
// create instance of class
clsData myData = new clsData();
// send SQL statement to class
myData.SQL = "SELECT ID, EventName, EventDate FROM tblEvents ORDER BY EventName";
// loop through datatable to get values
for (int i = 0; i < myData.dt.Rows.Count; i++)
{
// add customer to list box
cboEventName.Items.Add(myData.dt.Rows[i]["EventName"].ToString());
// add customer id to list
string eventdate = ["EventDate"].ToString();
txtEventDate.Text = cboEventName.SelectedValue.ToString();
// txtEventDate trying to fill from combobox entry and it isn't showing the date from the access.
intEventID.Add(int.Parse(myData.dt.Rows[i]["ID"].ToString()));
}
【问题讨论】:
-
如果您的“EventDate”来自 mydate。然后设置你的 myData.dt.Rows[i]["EventDate"].ToString()
-
请添加断点并检查每一行。并且看到 mydata 有一些数据列表并且 cboEventName 正在填充。然后在设置 txtEventDate 之前检查 eventDate 你得到的值
-
我可以让组合框填充,但日期不会填充文本字段。
-
我尝试了您的建议,但组合框没有填写,但事件日期使用一个固定日期而不是基于组合框的选择
-
在您的 foreach 条件中再添加一个 if 条件以匹配您为组合框选择的索引,然后设置您的 eventdate(string) 字段。现在它正在为 Mydata 列表中的每个数据进行设置。
标签: c# sql database combobox textbox