HideDisabledControlAdapter Klasa

Definicja

Udostępnia funkcje renderowania skojarzonej kontrolki sieci Web w celu zmodyfikowania domyślnego znaczników lub zachowania dla określonej przeglądarki.

public ref class HideDisabledControlAdapter : System::Web::UI::WebControls::Adapters::WebControlAdapter
public class HideDisabledControlAdapter : System.Web.UI.WebControls.Adapters.WebControlAdapter
type HideDisabledControlAdapter = class
    inherit WebControlAdapter
Public Class HideDisabledControlAdapter
Inherits WebControlAdapter
Dziedziczenie
HideDisabledControlAdapter

Przykłady

Poniższy przykład kodu pokazuje, jak rozszerzyć HideDisabledControlAdapter klasę, aby wyświetlić kontrolkę Label w stanie włączonym i wyłączonym. Ten przykład zawiera trzy części:

  • Adapter pochodzący z HideDisabledControlAdapter klasy .

  • Plik aspx, który zawiera zawartość specyficzną dla kontrolki Label i urządzenia.

  • Plik przeglądarki umożliwiający połączenie adaptera z typem urządzenia.

W poniższym przykładzie kodu pokazano, jak rozszerzyć klasę HideDisabledControlAdapter .

using System;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;

namespace Contoso
{
    [AspNetHostingPermission(
        SecurityAction.Demand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(
        SecurityAction.InheritanceDemand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    public class HideDisabledControlContosoAdapter:
        System.Web.UI.WebControls.Adapters.HideDisabledControlAdapter
    {
        // Link the Label control to the adapter.
        protected new System.Web.UI.WebControls.Label Control
        {
            get
            {
                return (System.Web.UI.WebControls.Label)base.Control;
            }
        }

        // Do not render the Contoso controls if Enabled is false.
        protected override void Render(System.Web.UI.HtmlTextWriter writer)
        {
            if (Control.ID.StartsWith("Contoso"))
            {
                if (!Control.Enabled)
                {
                    return;
                }
            }

            base.Render(writer);
        }
    }
}
Imports System.Web
Imports System.Web.UI
Imports System.Security.Permissions

Namespace Contoso
    <AspNetHostingPermission( _
        SecurityAction.Demand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    <AspNetHostingPermission( _
        SecurityAction.InheritanceDemand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    Public Class HideDisabledControlContosoAdapter
        Inherits System.Web.UI.WebControls.Adapters.HideDisabledControlAdapter
    
        Protected Overloads ReadOnly Property Control() As _
            System.Web.UI.WebControls.Label
            Get
                Return CType( _
                    MyBase.Control, _
                    System.Web.UI.WebControls.Label)
            End Get
        End Property

        ' Do not render the control if Enabled is false.
        Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
            If (Control.ID.StartsWith("Contoso")) Then
                If (Not Control.Enabled) Then
                    Return
                End If
            End If

            MyBase.Render(writer)
        End Sub
    End Class
End Namespace

W poniższym przykładzie kodu pokazano, jak zadeklarować kontrolkę Label za pomocą zawartości specyficznej dla urządzenia.

<%@ page language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>HideDisabledControl Adapter</title>
    <script runat="server">
        void ServerButtonClick(Object source, EventArgs args)
        {
            if (Button1.Text == "Enable Label")
            {
                ContosoLabel1.Enabled = true;
                Button1.Text = "Disable Label";
                messageLabel.Text = "The label is <b>En</b>abled";
            }
            else
            {
                ContosoLabel1.Enabled = false;
                Button1.Text = "Enable Label";
                messageLabel.Text = "The label is <b>dis</b>abled";
            }
        }
    </script>
</head>
<body style="background-color:silver">
    <form id="Form1" runat="server">
        <asp:Label id="ContosoLabel1"             
            text="Contoso Label" 
            WinCE:text="CE Label"
            BorderWidth="3" 
            BorderStyle="Inset"
            style="FONT-SIZE: xx-small"
            runat="server">
            </asp:Label>
        <br />
        <asp:Button id="Button1" 
            text="Disable Label"
            OnClick="ServerButtonClick" 
            runat="server" />
        <br />    
        <asp:Label id="messageLabel" 
            runat="server" 
            style="FONT-SIZE: xx-small"
            AssociatedControlID="Button1">
            <i>Select the button to disable the label.</i>
        </asp:Label>
    </form>
</body>
</html>
<%@ page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>HideDisabledControl Adapter</title>
    <script runat="server">
        Sub ServerButtonClick(ByVal source As Object, ByVal args As EventArgs)
            If (Button1.Text.Equals("Enable Label")) Then
                ContosoLabel1.Enabled = True
                Button1.Text = "Disable Label"
                messageLabel.Text = "The label is <b>En</b>abled"
            Else
                ContosoLabel1.Enabled = False
                Button1.Text = "Enable Label"
                messageLabel.Text = "The label is <b>dis</b>abled"
            End If
        End Sub
    </script>
</head>
<body style="background-color:silver">
    <form id="Form1" runat="server">
        <asp:Label id="ContosoLabel1"             
            text="Contoso Label" 
            WinCE:text="CE Label"
            BorderWidth="3" 
            BorderStyle="Inset"
            style="FONT-SIZE: xx-small"
            runat="server">
            </asp:Label>
        <br />
        <asp:Button id="Button1" 
            text="Disable Label"
            OnClick="ServerButtonClick" 
            runat="server" />
        <br />    
        <asp:Label id="messageLabel" 
            runat="server" 
            style="FONT-SIZE: xx-small"
            AssociatedControlID="Button1">
            <i>Select the button to disable the label.</i>
        </asp:Label>
    </form>
</body>
</html>

W poniższym przykładzie kodu pokazano, jak połączyć kontrolkę Label z kartą niestandardową dla przeglądarek działających na platformie Windows CE .NET.

Uwagi

Klasa HideDisabledControlAdapter dostosowuje skojarzona WebControl kontrolkę w celu zmodyfikowania domyślnego znaczników lub zachowania dla określonej przeglądarki. Możesz rozszerzyć klasę, HideDisabledControlAdapter aby dodatkowo dostosować renderowanie kontrolki WebControl .

Karty są kompilowane .NET Framework składników, które przejmują co najmniej jeden etap w cyklu życia strony lub kontrolki. HideDisabledControlAdapter Rozszerzenie klasy zapewni dostęp do etapów cyklu życia kontrolkiWebControl. Aby uzyskać więcej informacji, zobacz Omówienie architektury zachowania adaptacyjnej kontroli.

Początkowe żądanie karty powoduje, że .NET Framework wyszukać zamapowany adapter dla kontrolki, biorąc pod uwagę cechy przeglądarki żądającej. Pliki definicji przeglądarki są używane przez HttpBrowserCapabilities klasę do identyfikowania cech przeglądarki klienta i mapowania karty na typ przeglądarki. Aby uzyskać więcej informacji, zobacz Omówienie architektury zachowania adaptacyjnej kontroli.

Konstruktory

HideDisabledControlAdapter()

Inicjuje nowe wystąpienie klasy HideDisabledControlAdapter.

Właściwości

Browser

Pobiera odwołanie do możliwości przeglądarki klienta wysyłającego bieżące żądanie HTTP.

(Odziedziczone po ControlAdapter)
Control

Pobiera odwołanie do kontrolki sieci Web, do której jest dołączona ta karta sterowania.

(Odziedziczone po WebControlAdapter)
IsEnabled

Pobiera wartość wskazującą, czy kontrolka Sieci Web i wszystkie jej kontrolki nadrzędne są włączone.

(Odziedziczone po WebControlAdapter)
Page

Pobiera odwołanie do strony, na której znajduje się kontrolka skojarzona z tą kartą.

(Odziedziczone po ControlAdapter)
PageAdapter

Pobiera odwołanie do karty strony dla strony, na której znajduje się skojarzona kontrolka.

(Odziedziczone po ControlAdapter)

Metody

BeginRender(HtmlTextWriter)

Wywoływane przed renderowaniem kontrolki. W klasie karty pochodnej generuje tagi otwierające, które są wymagane przez określony element docelowy, ale nie jest wymagany przez przeglądarki HTML.

(Odziedziczone po ControlAdapter)
CreateChildControls()

Tworzy kontrolki podrzędne specyficzne dla elementu docelowego dla kontrolki złożonej.

(Odziedziczone po ControlAdapter)
EndRender(HtmlTextWriter)

Wywoływana po renderowaniu kontrolki. W klasie pochodnej karty generuje tagi zamykające, które są wymagane przez określony element docelowy, ale nie jest wymagany przez przeglądarki HTML.

(Odziedziczone po ControlAdapter)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
LoadAdapterControlState(Object)

Ładuje informacje o stanie kontrolki karty, które zostały zapisane SaveAdapterControlState() podczas poprzedniego żądania na stronie, na której znajduje się kontrolka skojarzona z tą kartą sterowania.

(Odziedziczone po ControlAdapter)
LoadAdapterViewState(Object)

Ładuje informacje o stanie widoku karty, które zostały zapisane SaveAdapterViewState() podczas poprzedniego żądania na stronie, na której znajduje się kontrolka skojarzona z tą kartą sterowania.

(Odziedziczone po ControlAdapter)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnInit(EventArgs)

Zastępuje metodę OnInit(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnLoad(EventArgs)

Zastępuje metodę OnLoad(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnPreRender(EventArgs)

Zastępuje metodę OnPreRender(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnUnload(EventArgs)

Zastępuje metodę OnUnload(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
Render(HtmlTextWriter)

Zapisuje skojarzona kontrolka sieci Web ze strumieniem wyjściowym jako HTML.

RenderBeginTag(HtmlTextWriter)

Tworzy tag początkowy kontrolki Sieci Web w znacznikach przesyłanych do przeglądarki docelowej.

(Odziedziczone po WebControlAdapter)
RenderChildren(HtmlTextWriter)

Generuje znaczniki specyficzne dla elementu docelowego dla kontrolek podrzędnych w złożonej kontrolce, do której jest dołączona karta sterowania.

(Odziedziczone po ControlAdapter)
RenderContents(HtmlTextWriter)

Generuje adiustację wewnętrzną specyficzną dla elementu docelowego dla kontrolki sieci Web, do której jest dołączona karta sterowania.

(Odziedziczone po WebControlAdapter)
RenderEndTag(HtmlTextWriter)

Tworzy tag końcowy kontrolki Sieci Web w znacznikach przesyłanych do przeglądarki docelowej.

(Odziedziczone po WebControlAdapter)
SaveAdapterControlState()

Zapisuje informacje o stanie kontrolki dla karty sterującej.

(Odziedziczone po ControlAdapter)
SaveAdapterViewState()

Zapisuje informacje o stanie widoku dla karty sterującej.

(Odziedziczone po ControlAdapter)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też