仅在用户移动拆分器时才会触发的事件?

时间:2010-07-07 13:32:17

标签: vb.net winforms events splitter

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

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

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

2 个答案:

答案 0 :(得分:0)

不,由于拆分器已移动

,因此没有单独的事件。

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

答案 1 :(得分:0)

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

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