在我的 C# .Net 程序中,项目列表显示在左侧,PropertyGrid 显示在右侧,其中包含有关所选项目的信息。当我移动 PropertyGrid 的滚动条然后从列表中选择另一个项目时,滚动条保持在以前的位置。每次选择新项目时,我都希望能够将滚动条重置到顶部。
我已经能够看到滚动条的 .value 存储在哪里,但我无法访问它(System.Windows.Forms.PropertyGridInternal.PropertyGridView.ScrollBar)。有什么方法可以访问这些值来更改它们?
这是我在其他问题中发现的唯一内容,但我不确定如何使此解决方案适应我的问题: How can I catch scroll events in windows forms PropertyGrid
编辑:我链接到的问题是我最终是如何解决这个问题的。我使用反射来获取内部滚动条控件和 SetScrollOffset 方法,然后在左侧项目更改时使用它们将滚动条值设置为 0。