我有一个用Visual Studio和C#构建的winform。直到最近,组合框的行为与预期一致。但是,在添加功能时,我移动了所有表单元素,现在两个组合框快速关闭,然后才能选择一个选项(尽管您可以选择带滚轮或箭头键的项目)。下拉事件中的代码未更改。我很茫然 - 有人遇到过这样的事吗?
以下是下拉事件的代码: -
void comboBoxTargetServer_DropDown(object sender, System.EventArgs e)
{
comboBoxTargetServer.Items.Clear();
comboBoxTargetDatabase.Items.Clear();
comboBoxTargetDatabase.Items.Add("");
comboBoxTargetDatabase.Enabled = false;
//ActiveForm.Cursor = Cursors.WaitCursor;
List<string> sqlServers = SQLUtilities.ListSQLServers();
sqlServers.Sort();
foreach (string sqlServer in sqlServers)
{
comboBoxTargetServer.Items.Add(sqlServer);
}
//ActiveForm.Cursor = Cursors.Arrow;
comboBoxTargetDatabase.Enabled = true;
}
谢谢!
答案 0 :(得分:2)
ComboBox下拉后,您将清除所有项目。这将清空它,因此DropDown中没有任何内容,因此列表将消失。你应该选择一个不同的事件来填补它。实际上,数据是否在应用程序的一次运行的上下文中是静态的?如果是这样,请填写Form Load上的ComboBox并保留它。