ControlIDConverter Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece um conversor de tipos que recupera uma lista de IDs de controlo no contentor atual.
public ref class ControlIDConverter : System::ComponentModel::StringConverter
public class ControlIDConverter : System.ComponentModel.StringConverter
type ControlIDConverter = class
inherit StringConverter
Public Class ControlIDConverter
Inherits StringConverter
- Herança
- Derivado
Exemplos
O exemplo de código seguinte demonstra como usar o ControlIDConverter numa classe que exige que um TypeConverter renderize o ID de um controlo. É DebugInfoControl um controlo simples que imprime alguma informação sobre um controlo contido no Web Form atual. A sua ControlID propriedade é decorada com um TypeConverterAttribute que designa o ControlIDConverter como o TypeConverter a usar para essa propriedade. O DebugInfoControl método sobrepõe-se ao Render método para imprimir informações sobre o controlo alvo num Label controlo.
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
O exemplo de código seguinte demonstra como pode DebugInfoControl ser usado num Web Form juntamente com um AccessDataSource controlo para mostrar informação sobre o AccessDataSource controlo.
<%@ 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>
Observações
A ControlIDConverter classe deriva da StringConverter classe e fornece uma lista de IDs de controlo para exibição num controlo de grelha de propriedade em ambientes de design. A ControlIDConverter classe serve também como classe base para as AssociatedControlConverter classes e, ValidatedControlConverter que são conversores de tipos para controlos Web e controlos que suportam atributos de propriedades de validação, respetivamente.
Para mais informações sobre conversores de tipos, veja Como: Implementar um Conversor de Tipos ou Conversão de Tipos Generalizada.
Construtores
| Name | Description |
|---|---|
| ControlIDConverter() |
Inicializa uma nova instância da ControlIDConverter classe. |
Métodos
| Name | Description |
|---|---|
| CanConvertFrom(ITypeDescriptorContext, Type) |
Obtém um valor que indica se este conversor pode converter um objeto do tipo de fonte dado numa cadeia usando o contexto especificado. (Herdado de StringConverter) |
| CanConvertFrom(Type) |
Devolve se este conversor pode converter um objeto do tipo dado para o tipo deste conversor. (Herdado de TypeConverter) |
| CanConvertTo(ITypeDescriptorContext, Type) |
Devolve se este conversor pode converter o objeto para o tipo especificado, usando o contexto especificado. (Herdado de TypeConverter) |
| CanConvertTo(Type) |
Devolve se este conversor pode converter o objeto para o tipo especificado. (Herdado de TypeConverter) |
| ConvertFrom(ITypeDescriptorContext, CultureInfo, Object) |
Converte o objeto de valor especificado num String objeto. (Herdado de StringConverter) |
| ConvertFrom(Object) |
Converte o valor dado para o tipo deste conversor. (Herdado de TypeConverter) |
| ConvertFromInvariantString(ITypeDescriptorContext, String) |
Converte a cadeia dada para o tipo deste conversor, usando a cultura invariante e o contexto especificado. (Herdado de TypeConverter) |
| ConvertFromInvariantString(String) |
Converte a cadeia dada para o tipo deste conversor, usando a cultura invariante. (Herdado de TypeConverter) |
| ConvertFromString(ITypeDescriptorContext, CultureInfo, String) |
Converte o texto dado num objeto, usando a informação específica de contexto e cultura. (Herdado de TypeConverter) |
| ConvertFromString(ITypeDescriptorContext, String) |
Converte o texto dado num objeto, usando o contexto especificado. (Herdado de TypeConverter) |
| ConvertFromString(String) |
Converte o texto especificado num objeto. (Herdado de TypeConverter) |
| ConvertTo(ITypeDescriptorContext, CultureInfo, Object, Type) |
Converte o objeto de valor dado para o tipo especificado, usando o contexto e a informação de cultura especificados. (Herdado de TypeConverter) |
| ConvertTo(Object, Type) |
Converte o objeto de valor dado para o tipo especificado, usando os argumentos. (Herdado de TypeConverter) |
| ConvertToInvariantString(ITypeDescriptorContext, Object) |
Converte o valor especificado para uma representação de cordas invariante à cultura, usando o contexto especificado. (Herdado de TypeConverter) |
| ConvertToInvariantString(Object) |
Converte o valor especificado para uma representação de cordas invariante à cultura. (Herdado de TypeConverter) |
| ConvertToString(ITypeDescriptorContext, CultureInfo, Object) |
Converte o valor dado numa representação de cadeia, usando a informação específica de contexto e cultura. (Herdado de TypeConverter) |
| ConvertToString(ITypeDescriptorContext, Object) |
Converte o valor dado numa representação de cadeia, usando o contexto dado. (Herdado de TypeConverter) |
| ConvertToString(Object) |
Converte o valor especificado numa representação de cadeia. (Herdado de TypeConverter) |
| CreateInstance(IDictionary) |
Recria um Object dado conjunto de valores de propriedade para o objeto. (Herdado de TypeConverter) |
| CreateInstance(ITypeDescriptorContext, IDictionary) |
Cria uma instância do tipo a que isto TypeConverter está associado, usando o contexto especificado, dado um conjunto de valores de propriedade para o objeto. (Herdado de TypeConverter) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| FilterControl(Control) |
Devolve um valor que indica se o ID de controlo do controlo especificado é adicionado ao TypeConverter.StandardValuesCollection que é devolvido pelo GetStandardValues(ITypeDescriptorContext) método. |
| GetConvertFromException(Object) |
Devolve uma exceção ao lançamento quando uma conversão não pode ser realizada. (Herdado de TypeConverter) |
| GetConvertToException(Object, Type) |
Devolve uma exceção ao lançamento quando uma conversão não pode ser realizada. (Herdado de TypeConverter) |
| GetCreateInstanceSupported() |
Devolve se alterar um valor neste objeto requer uma chamada ao CreateInstance(IDictionary) método para criar um novo valor. (Herdado de TypeConverter) |
| GetCreateInstanceSupported(ITypeDescriptorContext) |
Devolve se alterar um valor neste objeto requer uma chamada a CreateInstance(IDictionary) para criar um novo valor, usando o contexto especificado. (Herdado de TypeConverter) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetProperties(ITypeDescriptorContext, Object, Attribute[]) |
Devolve uma coleção de propriedades para o tipo de array especificado pelo parâmetro de valor, usando o contexto e atributos especificados. (Herdado de TypeConverter) |
| GetProperties(ITypeDescriptorContext, Object) |
Devolve uma coleção de propriedades para o tipo de array especificado pelo parâmetro de valor, usando o contexto especificado. (Herdado de TypeConverter) |
| GetProperties(Object) |
Devolve uma coleção de propriedades para o tipo de array especificado pelo parâmetro de valor. (Herdado de TypeConverter) |
| GetPropertiesSupported() |
Devolve se este objeto suporta propriedades. (Herdado de TypeConverter) |
| GetPropertiesSupported(ITypeDescriptorContext) |
Devolve se este objeto suporta propriedades, usando o contexto especificado. (Herdado de TypeConverter) |
| GetStandardValues() |
Devolve uma coleção de valores padrão do contexto padrão para o tipo de dado para o qual este conversor de tipo foi concebido. (Herdado de TypeConverter) |
| GetStandardValues(ITypeDescriptorContext) |
Devolve uma coleção de IDs de controlo do contentor dentro do IDesignerHost quando fornecido com um contexto de formato. |
| GetStandardValuesExclusive() |
Devolve se a coleção de valores padrão retornada de GetStandardValues() é uma lista exclusiva. (Herdado de TypeConverter) |
| GetStandardValuesExclusive(ITypeDescriptorContext) |
Devolve um valor que indica se a coleção de valores padrão devolvida pelo GetStandardValues(ITypeDescriptorContext) método é uma lista exclusiva de valores possíveis, usando o contexto especificado. |
| GetStandardValuesSupported() |
Devolve se este objeto suporta um conjunto padrão de valores que podem ser escolhidos de uma lista. (Herdado de TypeConverter) |
| GetStandardValuesSupported(ITypeDescriptorContext) |
Devolve um valor que indica se este objeto suporta um conjunto padrão de valores de ID de controlo que podem ser escolhidos de uma lista, usando o contexto especificado. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| IsValid(ITypeDescriptorContext, Object) |
Devolve se o objeto de valor dado é válido para este tipo e para o contexto especificado. (Herdado de TypeConverter) |
| IsValid(Object) |
Devolve se o objeto de valor dado é válido para este tipo. (Herdado de TypeConverter) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| SortProperties(PropertyDescriptorCollection, String[]) |
Ordena um conjunto de propriedades. (Herdado de TypeConverter) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |