0

我有一个带有拆分器控件的 VB .NET 表单,我想在程序运行之间保存它的位置。我目前正在处理 SplitterMoved 事件并存储 SplitterDistance。然后在程序启动时,我将 SplitterDistance 设置为保存的值。

但是,有时程序会调整拆分器的大小,引发 SplitterMoved 事件并覆盖我保存的距离。我在选项卡控件中的多个选项卡上有几个拆分器,每当用户第一次进入新选项卡时,SplitterMoved 事件都会触发。

有没有我可以使用的事件,它只会在用户移动拆分器时触发,而不是在程序移动拆分器时触发?我尝试了 MouseUp,但是当该事件触发时,新的 SplitterDistance 尚未设置。

4

2 回答 2

0

不,由于拆分器已移动,因此没有单独的事件。

鉴于拆分器应该与它不应该更改您存储的值之前的位置相同。您是否正在检查sender对象以确保您正在更新正确的分离器位置?

于 2010-07-07T13:36:32.087 回答
0

SplitterEventArgs 提供拆分器坐标和鼠标坐标。

我假设对于非用户发起的 SplitterMoved 事件,鼠标坐标将超出范围。

于 2010-07-07T13:39:35.217 回答