【发布时间】:2014-03-07 01:35:46
【问题描述】:
我已经基于一些博客资源实现了一个网格拆分器,基本上允许基于双击事件展开/折叠。
拆分器位于网格的两列之间,表示屏幕布局,左侧为 NavigationPanel,右侧为 MainContentPanel,拆分器允许将 NavigationPanel 折叠到仅显示图标的最小宽度。
在允许拖动拆分器和键盘调整时,有没有办法禁用网格拆分器的默认行为?
我目前的解决方法如下
- 通过将 Focusable 设置为 False 来禁用键盘调整
- 通过将 ToggleButton 控件放置在与 GridSplitter 相同的上方,防止用户“抓住”拆分器,从而使按钮拦截所有鼠标点击。
我有一个版本,我根本不使用 ToggleButton,只处理 GridSplitter 上的双击事件,但问题是我找不到禁用鼠标拖动功能的方法。
【问题讨论】:
-
你为什么要使用 gridsplitter?
-
如果不使用默认行为,为什么要使用 GridSplitter?一个带有 ToggleButton 的扩展器就足够了。
-
我有一个带有网格的应用程序,其中第 0 列是 NavigationPanel,第 1 列是拆分器,第 2 列是 MainContentPanel。这个想法是您应该能够将 NavPanel 折叠到仅显示图标的最小尺寸(即不完全隐藏它)。我没有尝试使用扩展器,因为我认为这会扩展或折叠整个面板,这是我不想要的。