mainshortinfo.aspx.vb

来自「是可以运行的电子光盘 有程序与PPT介绍 对于学习VB。NET的有参考意义」· VB 代码 · 共 111 行

VB
111
字号
Imports System.Data

Partial Class ShortInfoManager_MainShortInfo
    Inherits System.Web.UI.Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Me.IsPostBack Then '放在Ispostback中解决 回发或回调参数无效的问题
            '必须进行初始华,因为所有页面均使用该会话进行排序
            Session("SortName") = "SendUser"
            Session("SortAscending") = "yes"
            Dim ID As String = Request("ID")
            Dim Filter As String
            Select Case ID
                Case "1"
                    Filter = "ReceiveUser='" & Session("User").ToString & "'"
                    FillGridView(True, Filter)
                Case "2"
                    Filter = "SendUser='" & Session("User").ToString & "'"
                    FillGridView(True, Filter)
            End Select
            Me.StatusMessage.Text = String.Empty
        End If
    End Sub
    'SortName排序字段名;direction排序的方式即递增还是递减,"yes"表示递增,"no"表示递减;bFilter为真表示进行过滤;在 bFilter为真时,需要过滤表达式
    Private Sub FillGridView(ByVal bFilter As Boolean, Optional ByVal strFilter As String = Nothing)
        Dim ds As New DataSet
        '将XML文件读取数据       
        ds = ShareXmlServer.GetDataSetByXml(Data.C_MainShortMsgXmlMapPath)
        If IsNothing(ds) Then
            '初始化MainShortMsg.xml文件
            ds = New DataSet
            IniMainShortMsgXML(ds)
        End If
        Dim dv As DataView = ds.Tables(0).DefaultView
        If bFilter Then
            dv.RowFilter = strFilter
        End If

        If Session("SortAscending") = "yes" Then
            dv.Sort = Session("SortName") + " ASC"
        Else
            dv.Sort = Session("SortName") + " DESC"
        End If
        GridView1.DataSource = dv
        GridView1.DataBind()
        ds = Nothing
    End Sub

    Private Sub IniMainShortMsgXML(ByVal ds As DataSet)
        Dim dt As DataTable
        dt = ds.Tables.Add("ShortMsg")

        dt.Columns.Add("ReceiveUser")
        dt.Columns.Add("SendUser")
        dt.Columns.Add("Title")
        dt.Columns.Add("Content")
        dt.Columns.Add("Date")
        dt.Columns.Add("State")

        Dim Value() As String = {Session("User").ToString, Session("User").ToString, "Title", "事例", Now.ToShortDateString, "False"}
        dt.Rows.Add(Value)
        dt.WriteXml(ShareXmlServer.GetXmlFullPath(Data.C_MainShortMsgXmlMapPath))
    End Sub
#Region "GridView控件事件"

    Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
        If e.Row.RowType = DataControlRowType.DataRow Then
            Dim Titlehy As HyperLink = CType(e.Row.FindControl("TitleLink"), HyperLink)
            Dim ReceiveUser As String = CType(e.Row.FindControl("ReceiveUser"), Literal).Text
            Dim SendUser As String = CType(e.Row.FindControl("SendUser"), Literal).Text
            '只有收件人是自己,才可以查看内容,即才显示超连接
            If ReceiveUser = Session("User").ToString Or SendUser = Session("User").ToString Then
                Dim strRequest As String
                strRequest = "User=" & Server.UrlEncode(ReceiveUser)
                strRequest &= "&Title=" & Server.UrlEncode(Titlehy.Text)
                Titlehy.NavigateUrl = "~/ShortInfoManager/ShowAndBack.aspx?" & strRequest  '对中文进行编码
            End If

        End If
    End Sub
    Protected Sub GridView1_RowDeleting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewDeleteEventArgs) Handles GridView1.RowDeleting
        Dim Index As Integer = e.RowIndex
        Dim User As String = CType(GridView1.Rows(Index).FindControl("ReceiveUser"), Literal).Text
        Dim Title As String = CType(GridView1.Rows(Index).FindControl("TitleLink"), HyperLink).Text
        Dim ds As New DataSet
        '将XML文件读取数据       
        ds = ShareXmlServer.GetDataSetByXml(Data.C_MainShortMsgXmlMapPath)
        If IsNothing(ds) Then Return
        '根据收件人和标题删除记录
        Dim Field(1) As String
        Dim Value(1) As String
        Field(0) = "ReceiveUser"
        Value(0) = User
        Field(1) = "Title"
        Value(1) = Title
        ShareXmlServer.DeleteXmlRowByFieldAndValue(Data.C_MainShortMsgXmlMapPath, Field, Value)
        FillGridView(False)
    End Sub
    Protected Sub GridView1_PageIndexChanging(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewPageEventArgs) Handles GridView1.PageIndexChanging
        GridView1.PageIndex = e.NewPageIndex
        FillGridView(False)

    End Sub
    '处理GridView的排序事件()
    Protected Sub GridView1_Sorting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewSortEventArgs) Handles GridView1.Sorting
        WebPageShare.GridViewSort(GridView1, e)
        FillGridView(False)
    End Sub
#End Region
End Class

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?