📄 defaultvb.aspx.vb
字号:
Imports System.Data.OleDb
Imports Telerik.WebControls
Imports System
Imports System.Data
Imports System.Drawing
Imports System.Web
Imports System.Web.UI.WebControls
Imports System.Web.UI.HtmlControls
Imports Telerik.QuickStart
Namespace Telerik.GridExamplesVBNET.GroupBy.Expressions
Public Class DefaultVB
Inherits XhtmlPage
Protected WithEvents btnPostBack As System.Web.UI.WebControls.Button
Protected TextBox1 As System.Web.UI.WebControls.TextBox
Protected WithEvents btnGroupBy As System.Web.UI.WebControls.Button
Protected WithEvents btnClearAll As System.Web.UI.WebControls.Button
Protected WithEvents RadGrid1 As RadGrid
Protected WithEvents CheckBox1 As System.Web.UI.WebControls.CheckBox
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Private errorMsg As String = String.Empty
Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
'
#Region "Web Form Designer generated code"
Protected Overrides Sub OnInit(ByVal e As EventArgs)
InitializeComponent()
MyBase.OnInit(e)
End Sub
Private Sub InitializeComponent()
End Sub
#End Region
Private Sub RadGrid1_NeedDataSource(ByVal [source] As Object, ByVal e As GridNeedDataSourceEventArgs) Handles RadGrid1.NeedDataSource
Dim MyOleDbConnection As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + Server.MapPath("~/Grid/Data/Access/Nwind.mdb"))
Dim MyOleDbDataAdapter As New OleDbDataAdapter
MyOleDbDataAdapter.SelectCommand = New OleDbCommand("SELECT Customers.CustomerID, Country, City, CompanyName, ContactName, Count(Orders.OrderID) as TotalOrders, Sum(OD.Quantity * OD.UnitPrice - Discount) as TotalAmount" + ControlChars.Cr + ControlChars.Lf + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "FROM Customers, Orders, [Order Details] OD" + ControlChars.Cr + ControlChars.Lf + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "Where (Orders.CustomerID = Customers.CustomerID) and" + ControlChars.Cr + ControlChars.Lf + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + " (OD.OrderID = Orders.OrderID)" + ControlChars.Cr + ControlChars.Lf + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + "Group By Customers.CustomerID, Country, City, CompanyName, ContactName" + ControlChars.Cr + ControlChars.Lf + ControlChars.Tab + ControlChars.Tab + ControlChars.Tab + " ", MyOleDbConnection)
Dim MyDataSet As New DataSet
MyOleDbConnection.Open()
MyOleDbDataAdapter.Fill(MyDataSet)
MyOleDbConnection.Close()
RadGrid1.DataSource = MyDataSet.Tables(0)
End Sub
Private Sub btnPostBack_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnPostBack.Click
End Sub
'
Private Sub btnGroupBy_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnGroupBy.Click
Try
Dim expression1 As GridGroupByExpression = GridGroupByExpression.Parse(Me.TextBox1.Text)
Me.RadGrid1.MasterTableView.GroupByExpressions.Add(expression1)
RadGrid1.Rebind()
Catch ex As Exception
Me.errorMsg = String.Format("<strong>Cannot add group by expression: {0}</strong><br>", ex.Message)
End Try
End Sub
Private Sub btnClearAll_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnClearAll.Click
Me.RadGrid1.MasterTableView.GroupByExpressions.Clear()
Me.RadGrid1.Rebind()
End Sub
Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter)
If Me.errorMsg <> String.Empty Then
RadGrid1.Visible = False
Label1.Text = errorMsg
Label1.Visible = True
End If
MyBase.Render(writer)
End Sub
Private Sub RadGrid1_ColumnCreated(ByVal sender As Object, ByVal e As WebControls.GridColumnCreatedEventArgs) Handles RadGrid1.ColumnCreated
If TypeOf (e.Column) Is GridBoundColumn AndAlso CType(e.Column, GridBoundColumn).DataField = "TotalAmount" Then
CType(e.Column, GridBoundColumn).DataFormatString = "{0:C}"
End If
End Sub
Private Sub CheckBox1_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.CheckedChanged
Me.RadGrid1.MasterTableView.GroupsDefaultExpanded = Me.CheckBox1.Checked
If (Me.RadGrid1.MasterTableView.GroupByExpressions.Count > 0) Then
'refresh on RreRender if grid not rebound
Me.RadGrid1.MasterTableView.SetLevelRequiresBinding()
End If
End Sub
End Class
End Namespace
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -