📄 defaultvb.aspx.vb
字号:
Imports System
Imports System.Web.UI.WebControls
Imports Telerik.WebControls
Imports Telerik.QuickStart
Imports Telerik.QuickStart.Grid
Namespace Telerik.GridExamplesVBNET.Hierarchy.DefiningStructure
Public MustInherit Class DefaultVB
Inherits XhtmlPage
Private Sub DefineGridStructure()
Me.RadGrid1 = New RadGrid
AddHandler Me.RadGrid1.NeedDataSource, New GridNeedDataSourceEventHandler(AddressOf Me.RadGrid1_NeedDataSource)
AddHandler Me.RadGrid1.DetailTableDataBind, New GridDetailTableDataBindEventHandler(AddressOf Me.RadGrid1_DetailTableDataBind)
Me.RadGrid1.CssClass = "RadGrid"
Me.RadGrid1.Width = Unit.Percentage(100)
Me.RadGrid1.PageSize = 5
Me.RadGrid1.AllowPaging = True
Me.RadGrid1.AutoGenerateColumns = False
Me.RadGrid1.GroupingEnabled = True
Me.RadGrid1.ShowGroupPanel = True
Me.RadGrid1.ClientSettings.AllowDragToGroup = True
Me.RadGrid1.MasterTableView.DataMember = "Customers"
Me.RadGrid1.MasterTableView.PageSize = 15
Me.RadGrid1.MasterTableView.CssClass = "MasterTable"
Me.RadGrid1.ItemStyle.CssClass = "GridRow"
Me.RadGrid1.AlternatingItemStyle.CssClass = "GridRow"
Me.RadGrid1.HeaderStyle.CssClass = "GridHeader"
Me.RadGrid1.PagerStyle.CssClass = "GridPager"
Me.RadGrid1.GroupHeaderItemStyle.CssClass = "GroupHeader"
Me.RadGrid1.GroupPanel.PanelItemsStyle.CssClass = "GroupPanelItems"
Me.RadGrid1.GroupPanel.PanelStyle.CssClass = "GroupPanel"
Dim column1 As New GridBoundColumn
column1.DataField = "CustomerID"
column1.HeaderText = "CustomerID"
Me.RadGrid1.MasterTableView.Columns.Add(column1)
column1 = New GridBoundColumn
column1.DataField = "ContactName"
column1.HeaderText = "Contact Name"
Me.RadGrid1.MasterTableView.Columns.Add(column1)
Me.RadGrid1.MasterTableView.Columns.Add(New GridExpandColumn)
Me.RadGrid1.MasterTableView.GroupByExpressions.Add(New GridGroupByExpression("Country Group By Country"))
Dim view1 As New GridTableView(Me.RadGrid1)
view1.DataMember = "Orders"
Me.RadGrid1.MasterTableView.DetailTables.Add(view1)
Dim expression1 As New GridGroupByExpression
Dim field1 As New GridGroupByField
field1 = New GridGroupByField
field1.FieldName = "RequiredDate"
field1.FormatString = "Required shipping date: {0}"
expression1.SelectFields.Add(field1)
field1 = New GridGroupByField
field1.FieldName = "Freight"
field1.FormatString = "Total shipping cost is {0}"
expression1.SelectFields.Add(field1)
field1 = New GridGroupByField
field1.FieldName = "RequiredDate"
expression1.GroupByFields.Add(field1)
view1.GroupByExpressions.Add(expression1)
column1 = New GridBoundColumn
column1.DataField = "OrderID"
column1.HeaderText = "OrderID"
view1.Columns.Add(column1)
column1 = New GridBoundColumn
column1.DataField = "OrderDate"
column1.HeaderText = "Date Ordered"
view1.Columns.Add(column1)
Dim view2 As New GridTableView(Me.RadGrid1)
view2.DataMember = "OrderDetails"
view1.DetailTables.Add(view2)
column1 = New GridBoundColumn
column1.DataField = "UnitPrice"
column1.HeaderText = "Unit Price"
view2.Columns.Add(column1)
column1 = New GridBoundColumn
column1.DataField = "Quantity"
column1.HeaderText = "Quantity"
view2.Columns.Add(column1)
Me.PlaceHolder1.Controls.Add(Me.RadGrid1)
End Sub
Private Sub RadGrid1_NeedDataSource(ByVal source As Object, ByVal e As GridNeedDataSourceEventArgs)
If Not e.IsFromDetailTable Then
RadGrid1.DataSource = DataSourceHelperVB.GetDataTable("SELECT * FROM Customers")
End If
RadGrid1.MasterTableView.DetailTables(0).DataSource = DataSourceHelperVB.GetDataTable("SELECT * FROM Orders")
RadGrid1.MasterTableView.DetailTables(0).DetailTables(0).DataSource = DataSourceHelperVB.GetDataTable("SELECT * FROM [Order Details]")
End Sub
Private Sub RadGrid1_DetailTableDataBind(ByVal source As Object, ByVal e As GridDetailTableDataBindEventArgs)
Dim parentItem As GridDataItem = CType(e.DetailTableView.ParentItem, GridDataItem)
If Not parentItem.Edit Then
If (e.DetailTableView.DataMember = "Orders") Then
e.DetailTableView.DataSource = DataSourceHelperVB.GetDataTable("SELECT * FROM Orders Where CustomerID = '" & parentItem("CustomerID").Text & "'")
Else
If (e.DetailTableView.DataMember = "OrderDetails") Then
e.DetailTableView.DataSource = DataSourceHelperVB.GetDataTable("SELECT * FROM [Order Details] Where OrderID = " & parentItem("OrderID").Text)
End If
End If
End If
End Sub
Protected Button1 As Button
Protected PlaceHolder1 As PlaceHolder
Private RadGrid1 As RadGrid
Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Init
DefineGridStructure()
End Sub
End Class
End Namespace
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -