问题描述
WinFormTreeView控件,节点众多,出现右侧的竖向滚动条。用鼠标滚轮滚动,每次向上或向下滚动3行节点。我想滚动我想要的节点行数,例如每次滚动10行节点。该怎么做?
解决方案
解决方案二:
可以试试选中,然后测试滚轮的效果,多次测试将其位置的值来算,然后将其值全部打印出来,然后再找方案比较科学。同时可以测试滚轮的滚动距离,然后再测试。
解决方案三:
这个是我写的Dev的GridView的控制[code=charp]privatevoidgridView1_MouseWheel(objectsender,MouseEventArgse){DevExpress.XtraGrid.Views.Grid.GridViewview=senderasDevExpress.XtraGrid.Views.Grid.GridView;if(view.FocusedColumn!=null){varcurrent=view.GetRow(view.FocusedRowHandle);if(current==null)view.CloseEditor();varfield=view.FocusedColumn.FieldName;varorgianlValue=WinUtils.GetValue(current,field);if(view.ActiveEditor!=null)view.Tag=view.ActiveEditor.EditValue;view.SetRowCellValue(view.FocusedRowHandle,field,orgianlValue);//if(e.Delta<0)view.TopRowIndex=gridView1.TopRowIndex-e.Delta;//elseif(e.Delta>0)//view.TopRowIndex=gridView1.TopRowIndex-1;view.ShowEditor();if(view.ActiveEditor!=null)view.ActiveEditor.EditValue=view.Tag;DevExpress.Utils.DXMouseEventArgs.GetMouseArgs(e).Handled=true;}}[/code]
解决方案四:
首先,TreeView没有内置的滚动事件;你之所以看到滚动效果,是TreeView的容器控件(比如Panel、Group等)的滚动事件。所以,你的思考方向是:怎么控制容器控件(比如说Panel)的滚动尺寸。
解决方案五:
设置Panel.VerticalScroll.SmallChange属性,可以控制滚动的尺寸。
解决方案六:
引用3楼lovelj2012的回复:
首先,TreeView没有内置的滚动事件;你之所以看到滚动效果,是TreeView的容器控件(比如Panel、Group等)的滚动事件。所以,你的思考方向是:怎么控制容器控件(比如说Panel)的滚动尺寸。
TreeView的容器控件是这个吗?[BrowsableAttribute(false)]publicIContainerContainer{get;}我调试了一下,发现返回null。
解决方案七:
你把TreeView放在一个Panel里,然后设置Panel的VerticalScroll.SmallChange属性