熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

11.6.1 Wrox United中的配置文件[5]

2022-06-13   來源: .NET編程 

    在頁面生命周期的一些位置中更新配置文件屬性的顯示例如每次Fan Club的視圖改變時運行如下的代碼

 

Sub FCLoginView_ViewChanged(ByVal sender As Object ByVal e As SystemEventArgs)

 

        DisplayProfileProperties()

    End Sub

    這將調用如下的方法

 

Private Sub DisplayProfileProperties()

 

        Dim NameBox As TextBox = CType(FCLoginViewFindControl(txtName) TextBox)

 

        If Not (NameBox Is Nothing) Then

            CType(FCLoginViewFindControl(txtName) TextBox)Text = ProfileName

            CType(FCLoginViewFindControl(txtAddress) TextBox)Text = ProfileAddress

            CType(FCLoginViewFindControl(txtCity) TextBox)Text = ProfileCity

            CType(FCLoginViewFindControl(txtCounty) TextBox)Text = ProfileCounty

            CType(FCLoginViewFindControl(txtPostCode) TextBox)Text = ProfilePostCode

            CType(FCLoginViewFindControl(txtCountry) TextBox)Text = ProfileCountry

            CType(FCLoginViewFindControl(chkMailing) CheckBox)Checked = ProfileMailings

            CType(FCLoginViewFindControl(txtEmail) TextBox)Text = ProfileEmail

            CType(FCLoginViewFindControl(txtAlias) TextBox)Text = ProfileMemberName

            CType(FCLoginViewFindControl(ThemeList) DropDownList)SelectedValue = ProfileTheme

         End If

 

    End Sub


 

    根據這個工作原理部分前面使用的代碼應該稍微更為熟悉檢索每個控件的值的復雜語法但這兒有一些附加內容注意存在一個測試用於查看頁面的當前可見版本上是否存在txtName文本框

    Dim NameBox As TextBox = CType(FCLoginViewFindControl(txtName TextBox)
    If Not (NameBox Is Nothing) Then

    因此如果txtName框可見(這將是用戶是否作為FanClubMember角色的成員登錄)則檢索配置文件數據如果用戶是匿名的或者是其他角色(而不是FanClubMember角色)的成員則配置文件將不會存在為了避免在運行時產生錯誤不會希望嘗試檢索不存在的數據因此這種檢查是必要的(如果不小心嘗試移除這種檢查並且作為匿名用戶訪問該頁面則會看到發生混亂)

    在繼續之前考慮的最後一件事情是在布局代碼(或FanClubaspx)中存在一些可能還不熟悉的控件

 

<table border=>

            <tr>

              <td>

                Name:</td>

              <td>

                <asp:TextBox ID=txtName runat=server Columns= />

                <asp:RequiredFieldValidator ID=rfv runat=server ControlToValidate=txtName

                  Text=* ErrorMessage=You must enter a value for your name />

              </td>

            </tr>

            <tr>
 

[]  []  []  []  []  []  


From:http://tw.wingwit.com/Article/program/net/201311/15699.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.