Web Form-д єгєгдєл бэхлэх

 


 

Web Form-д єгєгдєл бэхлэх тухай

Web Form-ууд нь єгєгдлийн баазтай холбогдохдоо ADO.NET-ийг ашигладаг. Та ємнєх хичээлvvд дээр єгєгдлийн баазтай ажиллах DataSet, DataAdapter, Connection объектуудын тухай vзсэн билээ. Web Form-д та энэ бvх объектуудыг ашиглан DataGrid, ListBox, ComboBox г.м контролуудыг єгєгдлєєр дvvргэнэ.

 

Дараах функцыг єгєгдлийн эхтэй холбоход ашигладгийг та мэдэх биз ээ. Мэдээж єєрийн хэрэглэх Provider, бааз-ийг тодорхойлж єгнє.
   Public Function ConnectStringBuild() As String
           Dim strConn As String

           strConn = "Provider=sqloledb"
           strConn &= ";Data Source=(local)"
           strConn &= ";Initial Catalog=Northwind"
           strConn &= ";User ID=sa"
           strConn &= ";Password="

           Return strConn
    End Sub

 

Combobox-г єгєгдєлєєр дvvргэх

Дараах код нь Customer combo-г хуудасыг анх уншихад дvvргэээд, Customer combo-гоос утга сонгох бvрд Orders combo-г Customer утгаас хамаарч дvvргэнэ.

    Private Sub Page_Load(ByVal Sender As System.Object, ByVal e As System.EventArgs) _
    Handles MyBase.Load
        If Not Page.IsPostBack Then
            CustLoad()
        End If
    End Sub

    Private Sub CustLoad()
        Dim oAdapter As OleDb.OleDbDataAdapter
        Dim oTable As DataTable
        Dim strSQL As String
        Dim strConn As String

        strConn = ConnectStringBuild()

        strSQL = "SELECT CustomerID, CompanyName "
        strSQL &= " FROM Customers ORDER BY CompanyName"

        oAdapter = New OleDb.OleDbDataAdapter(strSQL, strConn)
        oTable = New DataTable()

        oAdapter.Fill(oTable)

        With cboCust
            .DataSource = oTable
            .DataTextField = "CompanyName"
            .DataValueField = "CustomerID"
            .DataBind()
        End With
    End Sub

    Private Sub OrdersLoad()
        Dim oAdapter As OleDb.OleDbDataAdapter
        Dim oTable As DataTable
        Dim strSQL As String
        Dim strConn As String

        strConn = ConnectStringBuild()

        strSQL = "SELECT OrderID, OrderDate "
        strSQL &= "FROM Orders WHERE CustomerID = '"
        strSQL &= cboCust.SelectedItem.Value & "'"

        oAdapter = New OleDb.OleDbDataAdapter(strSQL, strConn)
        oTable = New DataTable()

        oAdapter.Fill(oTable)

        With cboOrders
            .Items.Clear()
            .DataSource = oTable
            .DataTextField = "OrderDate"
            .DataValueField = "OrderID"
            .DataBind()
        End With
    End Sub

    Private Sub cboCust_SelectedIndexChanged(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles cboCust.SelectedIndexChanged
        Call OrdersLoad()
    End Sub

 

DataGrid-г єгєгдєлєєр дvvргэх

GrdProducts нэртэй DataGrid контролыг хэрхэн єгєгдлєєр бэхлэхийг доор бичлээ.

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles MyBase.Load
        'Put user code to initialize the page here
        GridLoad()
    End Sub

    Private Sub GridLoad()
        Dim oAdapter As OleDb.OleDbDataAdapter
        Dim oTable As DataTable
        Dim strSQL As String
        Dim strConn As String

        strSQL = SQLBuild()
        strConn = ConnectStringBuild()

        oAdapter = New OleDb.OleDbDataAdapter(strSQL, strConn)
        oTable = New DataTable()

        oAdapter.Fill(oTable)

        grdProducts.DataSource = oTable.DefaultView
        grdProducts.DataBind()
    End Sub

 

DataGrid-г хуудастай болгох (Paging)

Хэрэв танд олон мєр бvхий хvснэгт буй бол тэднийг нэг дор бvгдийг нь харуулах тохиромжгvй, удаан байх нь ойлгомжтой. Тиймд єгєгдлийн хуудас хуудсаар хардаг болгох талаар жишээ vзье.

 

DataGrid контролын AllowPaging property-г true болгон, PageSize property-д нэг хуудасанд хэдэн мєр байхыг тодорхойлж (Default утга нь 10) дараах хэсэг мєрийг нэмж єгєхєд л хангалттай.
    Private Sub grdProducts_PageIndexChanged( _
     ByVal source As Object, _
     ByVal e As _  System.Web.UI.WebControls.DataGridPageChangedEventArgs) 
      Handles grdProducts.PageIndexChanged

        grdProducts.CurrentPageIndex = e.NewPageIndex
        GridLoad()
    End Sub
Дээр жишээг ажилуулбал хуудсууд руу шилжихдээ “<” ба ”>” ашиглана. Гэхдээ vvнийг єєрийн хvсснээр єєрчлєх бvрэн боломжтой.

 

Web Login Форм vvсгэх | дээшээ
нvvр хуудас