缩放视图
最大化视图
要通过代码最大化特定的细节视图,则调用它的 BaseView.ZoomView 方法。 BaseView.NormalView 方法则恢复原来的布局。
GridControl.DefaultView 属性提供了对当前最大化视图的访问。 如果当前没有最大化的细节视图,则 GridControl.DefaultView 匹配于 GridControl.MainView 属性值。
下面的示例展示了如何最大化获得焦点的主控行的第一个细节视图,然后恢复原布局:
C# | 复制代码 |
---|---|
using DevExpress.XtraGrid.Views.Grid; using DevExpress.XtraGrid.Views.Base; GridView view = gridControl1.FocusedView as GridView; if(view.IsMasterRow(view.FocusedRowHandle)) { int detailIndex = 0; view.SetMasterRowExpandedEx(view.FocusedRowHandle, detailIndex, true); ColumnView childView = (ColumnView)view.GetDetailView(view.FocusedRowHandle, detailIndex); if(childView != null) { childView.ZoomView(); // Perform some actions. // ... childView.NormalView(); } } |
Visual Basic | 复制代码 |
---|---|
Imports DevExpress.XtraGrid.Views.Grid Imports DevExpress.XtraGrid.Views.Base Dim View As GridView = gridControl1.FocusedView If (view.IsMasterRow(view.FocusedRowHandle)) Then Dim detailIndex As Integer = 0 View.SetMasterRowExpandedEx(view.FocusedRowHandle, detailIndex, True) Dim childView As ColumnView = View.GetDetailView(view.FocusedRowHandle, detailIndex) If Not childView Is Nothing Then childView.ZoomView() ' Perform some actions. ' ... childView.NormalView() End If End If |
下列代码展示了当特定组合键被按下时,如何缩放细节视图。 为了处理快捷键,接管了 GridControl.ProcessGridKey 事件。 当 CTRL+向右键 被按下时,获得焦点的视图被最大化。 按下 CTRL+向左键 则恢复视图的布局。
C# | 复制代码 |
---|---|
private void gridControl1_ProcessGridKey(object sender, System.Windows.Forms.KeyEventArgs e) { if(e.Control) { if(e.KeyCode == Keys.Right) { gridControl1.FocusedView.ZoomView(); e.Handled = true; } else if(e.KeyCode == Keys.Left) { gridControl1.DefaultView.NormalView(); e.Handled = true; } } } |
Visual Basic | 复制代码 |
---|---|
Private Sub gridControl1_ProcessGridKey(ByVal sender As Object, ByVal e As KeyEventArgs) _ Handles gridControl1.ProcessGridKey If e.Control Then If e.KeyCode = Keys.Right Then gridControl1.FocusedView.ZoomView() e.Handled = True ElseIf e.KeyCode = Keys.Left Then gridControl1.DefaultView.NormalView() e.Handled = True End If End If End Sub |
缩放设置
要禁止最大化细节视图,则可以把主表视图的 GridOptionsDetail.AllowZoomDetail 属性设置为 false。 在这种情况下,不显示缩放按钮,也不能通过代码最大化细节视图。
如果 GridOptionsDetail.AutoZoomDetail 属性值被设置为 true,则在展开主控行时,自动最大化细节视图。 注意,此功能仅当 GridOptionsDetail.AllowZoomDetail 为 true 时可用。 在最大化细节视图之后,最终用户可以单击 X 状态的缩放按钮恢复布局。 要通过代码恢复布局,则调用 BaseView.NormalView 方法。如果通过把 GridOptionsDetail.EnableMasterViewMode 属性设置为 false 而禁用主/从模式,则细节视图也不能被最大化。