您好我正在使用CF 3.5和visual studio 2008开发智能WM 6.1应用程序。
所以我有一个通过datasource(我的sqlite数据库的表)填充的下拉列表。
我的问题是如何刷新(并用新数据填充)此下拉列表而不关闭并重新打开表单?
我的想法是在点击表单上的按钮后刷新它。
我尝试:
List.Update();
List.Refresh();
List.BeginUpdate();
List.DataSource() = Data;
List.EndUpdate();
由于
答案 0 :(得分:1)
首先,获取您的数据。
DataTable table = new DataTable();
table.Load(sqliteCmd.ExecuteReader());
如果成功,请继续。
if (0 < table.Rows.Count) {
}
如果您想要花哨,请保存当前选定的项目,以便在更新DropDownList
控件后重新选择它。
string last = ddlCtrl.Items[ddlCtrl.SelectedIndex].ToString();
清除DropDownList
控件中的项目。
ddlCtrl.Items.Clear();
将数据中的信息添加到DropDownList
控件中。
foreach (DataRow r in table.Rows) {
ddlCtrl.Items.Add(r[0].ToString());
}
如果你喜欢,请重新选择最后一项。
if (!String.IsNullOrEmpty(last)) {
for (int index = 0; index < ddlCtrl.Items.Count; index++) {
if (ddlCtrl.Items[index].ToString() == last) {
ddlCtrl.SelectedIndex = index;
break;
}
}
}