我希望能够拖动一组控件并选择其中某种类型的控件(TextBoxes)。
完成拖动操作后,我想显示一个输入框(是的,我将不得不引用/使用VB .dll),提示用户输入每个选定的TextBox中将要输入的值。
这可以做到吗?(当然可以,但如何实现?)
或者还有其他方法可以实现相同的功能(允许用户快速选择多个控件,然后对它们同时执行操作)?
更新:
我已经做到了这样的工作-“警告”或“陷阱”是我必须向用户弹出MessageBox.Show()才能使其工作。基本上,我:
在容器的MouseDown事件上设置一个布尔值为true,如果选择了右鼠标按钮。
在容器的MouseUp事件上,如果选择了右鼠标按钮,则将该布尔值设置为false。
然后,我在该表单上所有TextBox的共享MouseHover事件处理程序中,如果布尔值为true,则更改BackColor(从Window更改为Gainsboro)。
在容器的 MouseUp 事件中,我还使用了一个 InputBox(引用/导入/使用 VB .dll),要求用户输入将成为“突出显示”文本框通用的值。然后,我循环遍历它们,查找具有该 BackColor 的文本框,并将用户提供的值分配给它们的 Text 属性。
大功告成!
不幸的是,当您以这种方式分配值时,文本框的 Modified 属性似乎没有被改变,所以我不得不解决这个问题(显式地将“保存”按钮设置为启用状态),并且我不得不添加更多代码来复制我的 KeyPressed 代码,以限制用户输入的值。
因此,当然可以实现,尽管有点笨拙。我还没有决定 MessageBox.Show() 是一个“错误”还是一个特性...
相关帖子是: 为什么只有在消息框显示(或断点发生)之前才会调用 MouseHover 事件?
完成拖动操作后,我想显示一个输入框(是的,我将不得不引用/使用VB .dll),提示用户输入每个选定的TextBox中将要输入的值。
这可以做到吗?(当然可以,但如何实现?)
或者还有其他方法可以实现相同的功能(允许用户快速选择多个控件,然后对它们同时执行操作)?
更新:
我已经做到了这样的工作-“警告”或“陷阱”是我必须向用户弹出MessageBox.Show()才能使其工作。基本上,我:
在容器的MouseDown事件上设置一个布尔值为true,如果选择了右鼠标按钮。
在容器的MouseUp事件上,如果选择了右鼠标按钮,则将该布尔值设置为false。
然后,我在该表单上所有TextBox的共享MouseHover事件处理程序中,如果布尔值为true,则更改BackColor(从Window更改为Gainsboro)。
在容器的 MouseUp 事件中,我还使用了一个 InputBox(引用/导入/使用 VB .dll),要求用户输入将成为“突出显示”文本框通用的值。然后,我循环遍历它们,查找具有该 BackColor 的文本框,并将用户提供的值分配给它们的 Text 属性。
大功告成!
不幸的是,当您以这种方式分配值时,文本框的 Modified 属性似乎没有被改变,所以我不得不解决这个问题(显式地将“保存”按钮设置为启用状态),并且我不得不添加更多代码来复制我的 KeyPressed 代码,以限制用户输入的值。
因此,当然可以实现,尽管有点笨拙。我还没有决定 MessageBox.Show() 是一个“错误”还是一个特性...
相关帖子是: 为什么只有在消息框显示(或断点发生)之前才会调用 MouseHover 事件?