ControlIDConverter Classe

Definizione

Fornisce un convertitore di tipi che recupera un elenco di ID di controllo nel contenitore corrente.

public ref class ControlIDConverter : System::ComponentModel::StringConverter
public class ControlIDConverter : System.ComponentModel.StringConverter
type ControlIDConverter = class
    inherit StringConverter
Public Class ControlIDConverter
Inherits StringConverter
Ereditarietà
ControlIDConverter
Derivato

Esempio

Nell'esempio di codice seguente viene illustrato come usare in ControlIDConverter una classe che richiede un TypeConverter oggetto per eseguire il rendering dell'ID di un controllo. DebugInfoControl è un controllo semplice che stampa alcune informazioni su un controllo contenuto nel Web Form corrente. La proprietà ControlID è decorata con un TypeConverterAttribute oggetto che definisce l'oggetto ControlIDConverter da TypeConverter utilizzare per tale proprietà. Esegue DebugInfoControl l'override del Render metodo per stampare informazioni sul controllo di destinazione in un Label controllo .

namespace Samples.AspNet.CS {

  using System;
  using System.ComponentModel;
  using System.Web.UI;
  using System.Web.UI.WebControls;

  [DefaultProperty("ControlID")]
  public class DebugInfoControl : Control {

    public DebugInfoControl() {
    }

    public DebugInfoControl(string controlID) {
      ControlID = controlID;
    }

    [DefaultValue(""),
    TypeConverter(typeof(ControlIDConverter))]
    public string ControlID {
      get {
        object o = ViewState["ControlID"];
        if (o == null)
          return String.Empty;
        return (string)o;
      }
      set {
        if (ControlID != value) {
          ViewState["ControlID"] = value;
        }
      }
    }

    protected override void Render(HtmlTextWriter writer) {

      Label info = new Label();

      if (this.ControlID.Length == 0) {
        writer.Write("<Font Color='Red'>No ControlID set.</Font>");
      }

      Control ctrl = this.FindControl(ControlID);

      if (ctrl == null) {
        writer.Write("<Font Color='Red'>Could not find control " +  ControlID + " in Naming Container.</Font>");
      }
      else {
        writer.Write("<Font Color='Green'>Control " + ControlID + " found.<BR>");
        writer.Write("Its Naming Container is: " + ctrl.NamingContainer.ID + "<BR>");
        if (ctrl.EnableViewState)
          writer.Write("It uses view state to persist its state.<BR>");

        if (ctrl.EnableTheming)
          writer.Write("It can be assigned a Theme ID.<BR>");

        if (ctrl.Visible)
          writer.Write("It is visible on the page.<BR>");
        else
          writer.Write("It is not visible on the page.<BR>");

        writer.Write("</Font>");
      }
    }
  }
}
Imports System.ComponentModel
Imports System.Web.UI
Imports System.Web.UI.WebControls

Namespace Samples.AspNet.VB

  <DefaultProperty("ControlID")>  _
  Public Class DebugInfoControl
     Inherits Control


     Public Sub New()
     End Sub


     Public Sub New(controlID As String)
        ControlID = controlID
     End Sub


     <DefaultValue(""), TypeConverter(GetType(ControlIDConverter))>  _
     Public Property ControlID() As String
        Get
           Dim o As Object = ViewState("ControlID")
           If o Is Nothing Then
              Return String.Empty
           End If
           Return CStr(o)
        End Get
        Set
           If ControlID <> value Then
              ViewState("ControlID") = value
           End If
        End Set
     End Property


     Protected Overrides Sub Render(writer As HtmlTextWriter)

        Dim info As New Label()

        If Me.ControlID.Length = 0 Then
           writer.Write("<Font Color='Red'>No ControlID set.</Font>")
        End If

        Dim ctrl As Control = Me.FindControl(ControlID)


        If ctrl Is Nothing Then
           writer.Write(("<Font Color='Red'>Could not find control " + ControlID + " in Naming Container.</Font>"))
        Else
           writer.Write(("<Font Color='Green'>Control " + ControlID + " found.<BR>"))
           writer.Write(("Its Naming Container is: " + ctrl.NamingContainer.ID + "<BR>"))
           If ctrl.EnableViewState Then
              writer.Write("It uses view state to persist its state.<BR>")
           End If
           If ctrl.EnableTheming Then
              writer.Write("It can be assigned a Theme ID.<BR>")
           End If
           If ctrl.Visible Then
              writer.Write("It is visible on the page.<BR>")
           Else
              writer.Write("It is not visible on the page.<BR>")
           End If
           writer.Write("</Font>")
        End If
     End Sub
  End Class
End Namespace

Nell'esempio di codice seguente viene illustrato come DebugInfoControl utilizzare in un Web Form insieme a un AccessDataSource controllo per visualizzare informazioni sul AccessDataSource controllo .

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" assembly="Samples.AspNet.CS" %>
<%@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 runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:accessdatasource
          id="AccessDataSource1"
          runat="server"
          datasourcemode="DataReader"
          datafile="Northwind.mdb"
          selectcommand="SELECT OrderID FROM Orders WHERE EmployeeID=2">
      </asp:accessdatasource>

      <br />
      <aspSample:debuginfocontrol
          id="DebugInfoControl1"
          runat="server"
          controlid="AccessDataSource1" />

    </form>
  </body>
</html>
<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.VB" assembly="Samples.AspNet.VB" %>
<%@ 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 runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">

      <asp:accessdatasource
          id="AccessDataSource1"
          runat="server"
          datasourcemode="DataReader"
          datafile="Northwind.mdb"
          selectcommand="SELECT OrderID FROM Orders WHERE EmployeeID=2">
      </asp:accessdatasource>

      <br />
      <aspSample:debuginfocontrol
          id="DebugInfoControl1"
          runat="server"
          controlid="AccessDataSource1" />

    </form>
  </body>
</html>

Commenti

La ControlIDConverter classe deriva dalla StringConverter classe e fornisce un elenco di ID di controllo per la visualizzazione in un controllo griglia delle proprietà in ambienti in fase di progettazione. La ControlIDConverter classe funge anche da classe base per le AssociatedControlConverter classi e ValidatedControlConverter , che sono convertitori di tipi per controlli Web e controlli che supportano rispettivamente gli attributi delle proprietà di convalida.

Per altre informazioni sui convertitori di tipi, vedere Procedura: Implementare un convertitore di tipi o conversione di tipi generalizzati.

Costruttori

Nome Descrizione
ControlIDConverter()

Inizializza una nuova istanza della classe ControlIDConverter.

Metodi

Nome Descrizione
CanConvertFrom(ITypeDescriptorContext, Type)

Ottiene un valore che indica se questo convertitore può convertire un oggetto nel tipo di origine specificato in una stringa utilizzando il contesto specificato.

(Ereditato da StringConverter)
CanConvertFrom(Type)

Restituisce un valore che indica se questo convertitore può convertire un oggetto del tipo specificato nel tipo di questo convertitore.

(Ereditato da TypeConverter)
CanConvertTo(ITypeDescriptorContext, Type)

Restituisce un valore che indica se questo convertitore può convertire l'oggetto nel tipo specificato utilizzando il contesto specificato.

(Ereditato da TypeConverter)
CanConvertTo(Type)

Restituisce un valore che indica se questo convertitore può convertire l'oggetto nel tipo specificato.

(Ereditato da TypeConverter)
ConvertFrom(ITypeDescriptorContext, CultureInfo, Object)

Converte l'oggetto valore specificato in un oggetto String.

(Ereditato da StringConverter)
ConvertFrom(Object)

Converte il valore specificato nel tipo di questo convertitore.

(Ereditato da TypeConverter)
ConvertFromInvariantString(ITypeDescriptorContext, String)

Converte la stringa specificata nel tipo di questo convertitore, utilizzando le impostazioni cultura invarianti e il contesto specificato.

(Ereditato da TypeConverter)
ConvertFromInvariantString(String)

Converte la stringa specificata nel tipo di questo convertitore, utilizzando le impostazioni cultura invarianti.

(Ereditato da TypeConverter)
ConvertFromString(ITypeDescriptorContext, CultureInfo, String)

Converte il testo specificato in un oggetto utilizzando il contesto e le informazioni sulle impostazioni cultura specificate.

(Ereditato da TypeConverter)
ConvertFromString(ITypeDescriptorContext, String)

Converte il testo specificato in un oggetto utilizzando il contesto specificato.

(Ereditato da TypeConverter)
ConvertFromString(String)

Converte il testo specificato in un oggetto .

(Ereditato da TypeConverter)
ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type)

Converte l'oggetto valore specificato nel tipo specificato, utilizzando il contesto e le informazioni sulle impostazioni cultura specificate.

(Ereditato da TypeConverter)
ConvertTo(Object, Type)

Converte l'oggetto valore specificato nel tipo specificato utilizzando gli argomenti .

(Ereditato da TypeConverter)
ConvertToInvariantString(ITypeDescriptorContext, Object)

Converte il valore specificato in una rappresentazione di stringa invariante delle impostazioni cultura, utilizzando il contesto specificato.

(Ereditato da TypeConverter)
ConvertToInvariantString(Object)

Converte il valore specificato in una rappresentazione di stringa invariante delle impostazioni cultura.

(Ereditato da TypeConverter)
ConvertToString(ITypeDescriptorContext, CultureInfo, Object)

Converte il valore specificato in una rappresentazione di stringa, utilizzando il contesto e le informazioni sulle impostazioni cultura specificate.

(Ereditato da TypeConverter)
ConvertToString(ITypeDescriptorContext, Object)

Converte il valore specificato in una rappresentazione di stringa, utilizzando il contesto specificato.

(Ereditato da TypeConverter)
ConvertToString(Object)

Converte il valore specificato in una rappresentazione di stringa.

(Ereditato da TypeConverter)
CreateInstance(IDictionary)

Ricrea un Object dato un set di valori di proprietà per l'oggetto.

(Ereditato da TypeConverter)
CreateInstance(ITypeDescriptorContext, IDictionary)

Crea un'istanza del tipo a cui è associato questo TypeConverter utilizzando il contesto specificato, dato un set di valori di proprietà per l'oggetto .

(Ereditato da TypeConverter)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
FilterControl(Control)

Restituisce un valore che indica se l'ID controllo del controllo specificato viene aggiunto all'oggetto TypeConverter.StandardValuesCollection restituito dal GetStandardValues(ITypeDescriptorContext) metodo .

GetConvertFromException(Object)

Restituisce un'eccezione da generare quando non è possibile eseguire una conversione.

(Ereditato da TypeConverter)
GetConvertToException(Object, Type)

Restituisce un'eccezione da generare quando non è possibile eseguire una conversione.

(Ereditato da TypeConverter)
GetCreateInstanceSupported()

Restituisce un valore che indica se la modifica di un valore in questo oggetto richiede una chiamata al metodo CreateInstance(IDictionary) per creare un nuovo valore.

(Ereditato da TypeConverter)
GetCreateInstanceSupported(ITypeDescriptorContext)

Restituisce un valore che indica se la modifica di un valore in questo oggetto richiede una chiamata a CreateInstance(IDictionary) per creare un nuovo valore, utilizzando il contesto specificato.

(Ereditato da TypeConverter)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetProperties(ITypeDescriptorContext, Object, Attribute[])

Restituisce una raccolta di proprietà per il tipo di matrice specificato dal parametro value, utilizzando il contesto e gli attributi specificati.

(Ereditato da TypeConverter)
GetProperties(ITypeDescriptorContext, Object)

Restituisce una raccolta di proprietà per il tipo di matrice specificato dal parametro value, utilizzando il contesto specificato.

(Ereditato da TypeConverter)
GetProperties(Object)

Restituisce un insieme di proprietà per il tipo di matrice specificato dal parametro value.

(Ereditato da TypeConverter)
GetPropertiesSupported()

Restituisce un valore che indica se l'oggetto supporta le proprietà.

(Ereditato da TypeConverter)
GetPropertiesSupported(ITypeDescriptorContext)

Restituisce un valore che indica se l'oggetto supporta le proprietà utilizzando il contesto specificato.

(Ereditato da TypeConverter)
GetStandardValues()

Restituisce una raccolta di valori standard dal contesto predefinito per il tipo di dati per cui è progettato questo convertitore di tipi.

(Ereditato da TypeConverter)
GetStandardValues(ITypeDescriptorContext)

Restituisce una raccolta di ID di controllo dal contenitore all'interno del IDesignerHost quando viene fornito con un contesto di formato.

GetStandardValuesExclusive()

Restituisce un valore che indica se l'insieme di valori standard restituiti da GetStandardValues() è un elenco esclusivo.

(Ereditato da TypeConverter)
GetStandardValuesExclusive(ITypeDescriptorContext)

Restituisce un valore che indica se la raccolta di valori standard restituiti dal metodo GetStandardValues(ITypeDescriptorContext) è un elenco esclusivo di valori possibili, utilizzando il contesto specificato.

GetStandardValuesSupported()

Restituisce un valore che indica se l'oggetto supporta un set standard di valori che è possibile selezionare da un elenco.

(Ereditato da TypeConverter)
GetStandardValuesSupported(ITypeDescriptorContext)

Restituisce un valore che indica se questo oggetto supporta un set standard di valori ID controllo che possono essere prelevati da un elenco, utilizzando il contesto specificato.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
IsValid(ITypeDescriptorContext, Object)

Restituisce un valore che indica se l'oggetto valore specificato è valido per questo tipo e per il contesto specificato.

(Ereditato da TypeConverter)
IsValid(Object)

Restituisce un valore che indica se l'oggetto valore specificato è valido per questo tipo.

(Ereditato da TypeConverter)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
SortProperties(PropertyDescriptorCollection, String[])

Ordina una raccolta di proprietà.

(Ereditato da TypeConverter)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)

Si applica a

Vedi anche