⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defaultvb.aspx.vb

📁 Telerik是很大的第三方软件制造商
💻 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 + -