上下文菜单重置 ComboBox 的 SelectedIndex
-
09-06-2019 - |
题
我有一个在用户右键单击组合框后显示的上下文菜单。当用户在上下文菜单中选择一个项目时,将使用以下命令调出一个表单 ShowDialog()
方法。
If frmOptions.ShowDialog() = Windows.Forms.DialogResult.Cancel Then
LoadComboBoxes()
End If
当该表单关闭时,我刷新父表单上组合框中的所有数据。但是,当发生这种情况时,打开 ContextMenu 的 ComboBox 将重置为选定索引为 -1,但其他 ComboBox 的其他选定索引保持不变。
如何防止打开上下文菜单的组合框被重置?
解决方案
处理此问题的一种方法是使用上下文菜单的 Popup 事件来获取启动菜单的组合框的选定索引。当对话框关闭时重置所选索引。
其他提示
我想到了。
我创建了一个通过了 ContextMenu.SourceControl() 通过引用来获取属性,以便我可以操作调用 ContextMenu 的控件。在该方法的开头,我得到了 选定值 的组合框并重新加载组合框中的数据。然后我设置了 选定值 到我在方法开始时获得的值。
谢谢 DaveK 为我指明了正确的方向。
不隶属于 StackOverflow