Udostępnij za pośrednictwem


HideDisabledControlAdapter Klasa

Definicja

Zapewnia możliwości renderowania skojarzonej kontrolki sieci Web w celu zmodyfikowania domyślnego narzutu 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ć klasę Label w HideDisabledControlAdapter celu wyświetlenia kontrolki w stanie włączonym i wyłączonym. Ten przykład zawiera trzy części:

  • Adapter pochodzący z HideDisabledControlAdapter klasy .

  • Plik .aspx zawierający kontrolkę Label i zawartość specyficzną dla urządzenia.

  • Plik przeglądarki umożliwiający połączenie karty 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 z zawartością specyficzną 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>

Poniższy przykład kodu pokazuje, jak połączyć kontrolkę Label z niestandardową kartą dla przeglądarek działających na platformie .NET systemu Windows CE.

Uwagi

Klasa HideDisabledControlAdapter dostosowuje skojarzona WebControl kontrolkę, aby zmodyfikować domyślne znaczniki lub zachowanie dla określonej przeglądarki. Możesz rozszerzyć klasę, HideDisabledControlAdapter aby jeszcze bardziej dostosować renderowanie kontrolki WebControl .

Karty są kompilowane składniki programu .NET Framework, 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 adaptacyjnego sterowania.

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

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łączony ten adapter sterujący.

(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 adaptera pochodnego program 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łana po renderowaniu kontrolki. W klasie adaptera pochodnego 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 wartość bieżącego wystąpienia.

(Odziedziczone po Object)
LoadAdapterControlState(Object)

Ładuje informacje o stanie kontrolki adaptera, 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 do strumienia wyjściowego jako HTML.

RenderBeginTag(HtmlTextWriter)

Tworzy tag początkowy dla 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 kontrolce złożonej, do której jest dołączony adapter sterujący.

(Odziedziczone po ControlAdapter)
RenderContents(HtmlTextWriter)

Generuje wewnętrzny znacznik specyficzny dla elementu docelowego dla kontrolki sieci Web, do której jest dołączony adapter sterujący.

(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 sterowania 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ż