大家好,我正在使用CF 3.5和visual studio 2008开发一个智能WM 6.1应用程序。
所以我有一个下拉列表通过数据源填充(我的sqlite数据库的表)。
我的问题是我如何刷新(并用新数据填充)这个下拉列表而不关闭并重新打开表单?
我的想法是在单击表单上的按钮后刷新它。
i try with:
List.Update();
List.Refresh();
List.BeginUpdate();
List.DataSource() = Data;
List.EndUpdate();
谢谢
首先,获取你的数据。
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;
}
}
}