Sie sind auf Seite 1von 30

Controles estndar del Cuadro de herramientas

En los temas de esta seccin se describe cmo trabajar con los controles de servidor web ASP.NET que
aparecen en la pestaa Estndar del Cuadro de herramientas de Visual Web Developer. Entre ellos se incluyen
controles que permiten mostrar botones, listas, imgenes, cuadros, hipervnculos, etiquetas o tablas, as como
controles ms complejos que trabajan con datos estticos y dinmicos, o controles que actan como
contenedores de otros controles.
Los controles de servidor web ASP.NET son objetos de pginas web ASP.NET que se ejecutan cuando se solicita
la pgina y que representan marcado en el explorador. Muchos controles de servidor web son similares a los
conocidos elementos HTML, como botones y cuadros de texto. Otros controles abarcan comportamiento
complejo, como los controles de un calendario, y controles que puede usar para conectar a orgenes de datos y
datos de visualizacin.

Label
El control de servidor web Label permite establecer texto en una pgina web ASP.NET mediante programacin.
Normalmente, se utiliza el control Label cuando se desea cambiar el texto de una pgina en tiempo de
ejecucin, por ejemplo en respuesta a un clic en un botn. Puede establecer el texto del control Label en
tiempo de diseo o en tiempo de ejecucin en un programa. Tambin puede enlazar la propiedad Text del
control Label a un origen de datos para mostrar la informacin de la base de datos en una pgina.
En el ejemplo siguiente se muestra el uso de un control Label como leyenda de un control TextBox. Cuando la
pgina se represente, los usuarios podrn presionar ALT+N para navegar hasta el cuadro de texto. La letra N en
Label est subrayada.

<asp:Label
AccessKey="N"
AssociatedControlID="TextBox1"
ID="Label1"
runat="server"
Text="<u>N</u>ame:">
</asp:Label>
&nbsp;
<asp:TextBox ID="TextBox1" runat="server" />

Literal
Puede utilizar un control Literal de servidor web como un contenedor para otros contenidos de la pgina. El
control Literal representa una de las diferentes opciones que existen para agregar contenido a una pgina. Si se
trata de contenido esttico, puede agregar el marcado directamente a una pgina como HTML, sin utilizar un
contenedor. Sin embargo, si desea agregar el contenido dinmicamente, debe agregar el contenido a un
contenedor. Los contenedores tpicos son el control Label, el control Literal, el control Panel y el control
PlaceHolder.
El control Literal se diferencia del control Label en que el control Literal no agrega ningn elemento HTML al
texto. (El control Label representa un elemento span.) En consecuencia, el control Literal no admite ningn
atributo de estilo, incluidos los atributos de posicin. Sin embargo, el control Literal permite especificar si el
contenido est codificado.
Los controles Panel y PlaceHolder se representan como elementos div, que crean bloques discretos en la
pgina, en lugar de representarse en lnea como los controles Label y Literal.
En general, utilice un control Literal cuando desee representar texto y controles directamente en una pgina sin
ningn marcado adicional.
En el siguiente ejemplo se muestra una pgina Web sencilla que muestra un titular en tiempo de ejecucin. El
cuerpo de la pgina, incluido el control Literal, podra parecerse a ste:

<body>
<form runat="server">
<h1><asp:Literal id="Headline" runat=server
mode="PassThrough"/></h1>
</form>
</body>

En el ejemplo siguiente se muestra cmo se establece el texto y el cdigo del control Literal mediante
programacin. La pgina contiene botones de radio que permiten al usuario elegir entre texto codificado y
texto paso a travs.

<%@ Page Language="C#" %>


<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
Literal1.Text = "This <b>text</b> is inserted dynamically.";
if (radioEncode.Checked == true)
{
Literal1.Mode = LiteralMode.Encode;
}
if(radioPassthrough.Checked == true)
{
Literal1.Mode = LiteralMode.PassThrough;
}
}
</script>

</script>
<html>
<head runat="server"></head>
<body>
<form id="form1" runat="server">
<div>
<br />
<asp:RadioButton
ID="radioEncode"
runat="server"
GroupName="LiteralMode"
Checked="True"
Text="Encode"
AutoPostBack="True" />
<br />
<asp:RadioButton
ID="radioPassthrough"
runat="server"
GroupName="LiteralMode"
Text="PassThrough"
AutoPostBack="True" />
<br />
<br />
<asp:Literal ID="Literal1"
runat="server"></asp:Literal>&nbsp;</div>
</form>
</body>
</html>

TextBox
El control de servidor web TextBox proporciona a los usuarios un medio para escribir datos en una pgina Web
ASP.NET, incluidos texto, nmeros y fechas. El control de servidor TextBox es un control de entrada que permite
al usuario escribir texto. De forma predeterminada, la propiedad TextMode del control se establece en
TextBoxMode.SingleLine, que muestra un cuadro de texto de una sola lnea. Sin embargo, puede establecer la
propiedad TextMode en TextBoxMode.MultiLine para mostrar un cuadro de texto de varias lneas (que se
representa como un elemento textarea ). Tambin puede cambiar la propiedad TextMode a
TextBoxMode.Password para mostrar un cuadro de texto que enmascara los datos proporcionados por el
usuario. El texto mostrado en el control TextBox est disponible mediante el uso de la propiedad Text.
El control TextBox desencadena un evento TextChanged cuando el usuario abandona el control. De forma
predeterminada, el evento no se produce inmediatamente, sino que se produce en el servidor cuando se enva
la pgina. Sin embargo, es posible especificar que el control TextBox enve la pgina al servidor tan pronto
como el usuario abandone el campo.
El control TextBox de servidor web no desencadena un evento cada vez que el usuario presiona una tecla; slo
lo hace cuando el usuario abandona el control. Puede hacer que los eventos del cliente desencadenados por el
control TextBox se controlen desde un script de cliente, lo que puede resultar ser til para responder a las
pulsaciones de las distintas teclas.
En el ejemplo siguiente se muestra cmo se puede responder a los cambios en un control TextBox . El cdigo
muestra el contenido del control en una etiqueta.

protected void TextBox1_TextChanged(object sender, EventArgs e)


{
Label1.Text = Server.HtmlEncode(TextBox1.Text);
}

Button, LinkButton, ImageButton, ImageMap


Utilice los controles de servidor web de botn de ASP.NET para permitir a los usuarios exponer una pgina en
el servidor. Los controles de botn desencadenan un evento en el cdigo del servidor que puede controlar para
responder al postback. Por ejemplo, un usuario puede indicar que ha completado un formulario o que desea
ejecutar un comando concreto. El control Button tambin puede generar un evento en script de cliente que
puede administrar antes de que se exponga la pgina o que se puede ejecutar y, a continuacin, cancelar el
envo de la pgina.
En el ejemplo de cdigo siguiente se muestra una pgina web ASP.NET que incluye un script de cliente que
cambia el color del texto de un botn cuando el usuario pasa el puntero por encima de l.

<%@ Page Language="C#" %>


<html>
<head runat="server">
<title>Untitled Page</title>
<script type="text/javascript">
var previousColor;
function MakeRed()
{
previousColor = window.event.srcElement.style.color;
window.event.srcElement.style.color = "#FF0000";
}
function RestoreColor()
{
window.event.srcElement.style.color = previousColor;
}
</script>
</head>
<body>
<form id="form1" runat="server">
<asp:button id="Button1" runat="server"
text="Button1"
onmouseover="MakeRed();"
onmouseout="RestoreColor();" />
</form>
</body>
</html>

HyperLink
El control de servidor web HyperLink crea vnculos en una pgina web que permite a los usuarios pasar de una
pgina a otra en una aplicacin. La principal ventaja de utilizar un control HyperLink es que es posible
establecer las propiedades de los vnculos en el cdigo del servidor. Por ejemplo, puede cambiar
dinmicamente el texto o la pgina de destino del vnculo segn las condiciones de la pgina. Otra ventaja de
utilizar el control HyperLink es que se puede utilizar el enlace de datos para especificar la direccin URL de
destino del vnculo (y los parmetros que se transferirn con el vnculo, si es necesario).Un ejemplo tpico es
crear controles HyperLink basndose en una lista de productos. La direccin URL de destino seala a una
pgina donde el usuario puede leer ms detalles sobre el producto.
En el ejemplo siguiente se muestra cmo se pueden establecer las propiedades de un control HyperLink en
tiempo de ejecucin.El mtodo controla el evento Click de un control Button y establece el texto del vnculo y la
pgina de destino del control.

protected void Button1_Click (object sender, System.EventArgs e)


{
this.HyperLink1.Text = "Home";
this.HyperLink1.NavigateUrl = "http://www.microsoft.com/net/";
}

DropDownList
El control de servidor web DropDownList permite a los usuarios seleccionar un nico elemento en un cuadro de
lista desplegable predefinido. El control DropDownList de servidor web permite a los usuarios seleccionar uno o
varios elementos de una lista predefinida. Se diferencia del control ListBox de servidor Web en que la lista de
elementos permanece oculta hasta que los usuarios hacen clic en el botn desplegable. Adems, el control
DropDownList no admite el modo de seleccin mltiple.
Para trabajar mediante programacin con elementos de lista, utilice la coleccin Items del control
DropDownList. La coleccin Items es una coleccin estndar, por lo que es posible agregar objetos de
elementos, eliminar elementos, borrar la coleccin, etc.
El elemento que se encuentra seleccionado est disponible en la propiedad SelectedItem del control
DropDownList.
El control DropDownList provoca el evento SelectedIndexChanged cuando los usuarios seleccionan un
elemento. De forma predeterminada, este evento no expone la pgina en el servidor. Sin embargo, puede hacer
que el control fuerce un envo inmediato estableciendo la propiedad AutoPostBack en true.
En el ejemplo siguiente se muestra cmo se puede comprobar qu elemento est seleccionado en un control
RadioButtonList. El cdigo determina primero si existe una seleccin, para lo cual lee el valor de la propiedad
SelectedIndex, que ser -1 hasta que el usuario seleccione un elemento. A continuacin, obtiene el objeto
SelectedItem y muestra la propiedad Text de este objeto.

protected void Button1_Click (object sender, System.EventArgs e)


{
// Is anything selected? The index is -1 if nothing is selected.
if (RadioButtonList1.SelectedIndex > -1) {
Label1.Text="You chose: " +
RadioButtonList1.SelectedItem.Text;
}
}

ListBox
El control de servidor Web ListBox permite a los usuarios seleccionar uno o varios elementos de una lista
predefinida. Use el control de servidor web ListBox cuando desee mostrar varios elementos a la vez y permitir a
los usuarios seleccionar uno o ms elementos en una lista predefinida. El control ListBox se diferencia de un
control DropDownList en que puede mostrar varios elementos a la vez y, de manera opcional, permite al
usuario seleccionar varios elementos.
Para trabajar con elementos mediante programacin, utilice la coleccin Items del control ListBox. La coleccin
Items es una coleccin estndar, por lo que es posible agregar objetos de elementos, eliminar elementos,
borrar la coleccin, etc.
El elemento que se encuentra seleccionado est disponible en la propiedad SelectedItem del control ListBox. Si
el control est establecido en modo de seleccin nica, esta propiedad devuelve el elemento seleccionado. Si el
control est establecido en modo de seleccin mltiple, obtiene los elementos seleccionados recorriendo toda
la coleccin Items y examinando la propiedad Selected de cada elemento.
En el ejemplo siguiente se muestra cmo se agregan objetos ListItem a un control ListBox; este procedimiento
es idntico para todos los controles de lista de servidor web.

protected void Button1_Click (object sender, System.EventArgs e)


{
ListBox1.Items.Add(new ListItem("Carbon", "C"));
ListBox1.Items.Add(new ListItem("Oxygen", "O"));
}

CheckBox y CheckBoxList
Los controles CheckBox y CheckBoxList proporcionan una manera para que los usuarios especifiquen opciones
de tipo s/no (verdadero/falso). Puede emplear dos tipos de controles de servidor web para agregar casillas a
una pgina web de ASP.NET: controles CheckBox individuales o un control CheckBoxList. Ambos controles
proporcionan una manera para que los usuarios especifiquen opciones de tipo s/no (verdadero/falso).
Puede agregar controles CheckBox individuales a una pgina y usarlos por separado .Como alternativa, puede
usar el control CheckBoxList, que es un control nico que acta como control primario de una coleccin de
elementos de lista de casillas. Este control deriva de la clase base ListControl y, por tanto, funciona como los
controles de servidor web ListBox, DropDownList, RadioButtonList y BulletedList. Muchos de los procedimientos
que se usan al trabajar con el control CheckBoxList son los mismos que se emplean con otros controles de lista
de servidor.
Ambos tipos de controles ofrecen una serie de ventajas. Al utilizar controles CheckBox individuales, tendr
mayor control sobre la distribucin de las casillas en la pgina que si utiliza el control CheckBoxList. Por
ejemplo, puede incluir texto no perteneciente a las casillas entre las casillas. Tambin puede controlar la fuente
y el color de cada casilla.
Es preferible usar el control CheckBoxList si se desea crear una serie de casillas a partir de datos de un origen
de datos. (Puede enlazar un control CheckBox individual a datos.)

RadioButton y RadioButtonList
Los controles RadioButton y RadioButtonList permiten a los usuarios seleccionar opciones de entre un pequeo
conjunto de opciones predefinidas mutuamente excluyentes. Puede utilizar dos tipos de controles de servidor
web para agregar botones de radio a una pgina Web ASP.NET: controles RadioButton individuales o un
control RadioButtonList. Ambos controles permiten a los usuarios seleccionar opciones de entre un pequeo
conjunto de opciones predefinidas mutuamente excluyentes. Los controles permiten definir cualquier nmero
de botones de radio con etiquetas y organizarlos de forma horizontal o vertical.
Puede agregar controles RadioButton individuales a una pgina y usarlos por separado. Normalmente,
agrupar dos o ms botones individuales.
Como alternativa, puede usar el control RadioButtonList, que es un control nico que acta como control
primario de una coleccin de elementos de lista de botones de radio.Se deriva de la clase ListControl base.Por
lo tanto, funciona como los controles de servidor web ListBox, DropDownList, BulletedList y CheckBoxList.
Muchos de los procedimientos que se usan al trabajar con el control RadioButtonList son los mismos que se
usan con otros controles de lista de servidor web.
Ambos tipos de controles ofrecen una serie de ventajas. Si usa controles RadioButton individuales, tendr un
mayor control sobre el diseo del grupo de botones de radio que si usa el control RadioButtonList.Por ejemplo,
puede incluir texto que no pertenezca a botones de radio entre los botones de radio.
Es preferible que use el control RadioButtonList si desea crear un grupo de botones de radio basado en datos
de un origen de datos. Tambin resulta algo ms fcil escribir cdigo que determine qu botn se ha
seleccionado.
Si desea presentar a los usuarios una lista ms larga de opciones o una lista cuya longitud pueda variar en
tiempo de ejecucin, utilice un control de servidor web ListBox o DropDownList.
Los botones de radio rara vez se utilizan solos. Se suelen agrupar para proporcionar un conjunto de opciones
mutuamente excluyentes. Dentro de un grupo de botones de radio, slo es posible seleccionar los botones de
uno en uno. Para crear botones de radio agrupados, puede seguir uno de los siguientes procedimientos:

Agregue controles RadioButton de servidor web a una pgina y, a continuacin, agrguelos todos a un
grupo manualmente. El nombre de grupo es arbitrario; todos los botones de radio que tienen el
mismo nombre de grupo se consideran parte de un solo grupo.
Agregue un control RadioButtonList de servidor Web a la pgina. Los elementos de lista del control se
agrupan automticamente.

Image
El control de servidor web Image permite mostrar imgenes en pginas web ASP.NET y administrar estas
imgenes en su propio cdigo.
Puede especificar mediante programacin el archivo de grficos para un control Image en tiempo de diseo o
en tiempo de ejecucin. Tambin puede enlazar la propiedad ImageUrl del control a un origen de datos para
mostrar grficos procedentes de la informacin de una base de datos.
A diferencia de la mayora de los dems controles de servidor web, el control Image no admite ningn evento.
Por ejemplo, el control Image no responde a los clics del mouse. En su lugar, puede crear una imagen
interactiva utilizando los controles ImageMap o ImageButton de servidor web.
Adems de mostrar grficos, el control Image permite especificar varios tipos de texto para la imagen, como los
siguientes:

ToolTip El texto que se muestra en la informacin sobre herramientas de algunos exploradores.


AlternateText El texto que aparece si no se encuentra el archivo de grficos.Si no se especifica ninguna
propiedad ToolTip, algunos exploradores utilizarn el valor AlternateText como una informacin sobre
herramientas.

Si la propiedad GenerateEmptyAlternateText se establece en true, el atributo alt del elemento de imagen


representado se establecer en una cadena vaca.

Table, TableRow y TableCell


El control de servidor web Table permite crear tablas en pginas ASP.NET que puede programar en el cdigo
del servidor.Los controles de servidor web TableRow y TableCell proporcionan un medio para mostrar el
contenido del control Table.
Normalmente, las tablas no slo se utilizan para presentar informacin tabular, sino como un medio para dar
formato a la informacin de una pgina Web. Hay diferentes maneras de crear tablas en pginas ASP.NET:

Tabla HTML. Si est creando una tabla esttica (una tabla en la que no agregar contenido ni lo
cambiar en tiempo de ejecucin), debe utilizar una tabla HTML y no un control Table.
HtmlTable. ste es un elemento HTML table que se ha convertido en un control de servidor HTML
agregando el atributo runat=server.Puede programar este control en el cdigo del servidor.Para
obtener informacin detallada sobre los controles de servidor HTML, vea Informacin general sobre los
controles de servidor web ASP.NET.
Table. En un control web que permite crear y manipular tablas (por ejemplo, agregando filas y celdas de
tabla) mediante un modelo de objetos coherente con otros controles web.

En general, los controles Table de servidor Web se utilizan cuando se desea agregar filas y celdas (columnas) a
la tabla en el cdigo en tiempo de ejecucin.Aunque este control puede usarse como una tabla esttica, con
filas y columnas predefinidas, en ese caso es ms sencillo trabajar con el elemento table.
El control Table de servidor Web puede ser ms fcil de programar que el control HtmlTable, porque ofrece un
modelo de objetos con propiedades con tipo que resulta coherente con otros controles de servidor Web.(El
modelo tambin es coherente entre los controles Table, TableRow y TableCell.)
Algunas de las funciones que se podran realizar con un control Table de servidor Web tambin se pueden
llevar a cabo con los controles de lista de servidor Web, en particular, con los controles Repeater, DataList y
GridView.Todos estos controles se representan (o tienen la opcin de representarse) como tablas HTML.
stas son las diferencias que existen entre los controles de lista y el control Table:

Los controles de lista estn enlazados a datos. Los controles de lista slo funcionan con un origen de
datos, mientras que el control Table puede mostrar cualquier combinacin de texto HTML y controles,
estn o no enlazados a datos.
Los controles de lista utilizan plantillas para especificar el diseo de sus elementos. El control Table
admite el control secundario TableCell, que puede llenarse igual que cualquier elemento HTML td.

En el ejemplo siguiente se muestra cmo se puede agregar filas y celdas a un control Table.El nmero de filas y
columnas est determinado por lo que escribe el usuario en dos cuadros de texto.Cada celda muestra el
nmero de fila y el nmero de celda como texto esttico.

protected void Button1_Click (object sender, System.EventArgs e)


{
// Total number of rows.
int rowCnt;
// Current row count.
int rowCtr;
// Total number of cells per row (columns).

int cellCtr;
// Current cell counter
int cellCnt;
rowCnt = int.Parse(TextBox1.Text);
cellCnt = int.Parse(TextBox2.Text);
for(rowCtr=1; rowCtr <= rowCnt; rowCtr++) {
// Create new row and add it to the table.
TableRow tRow = new TableRow();
Table1.Rows.Add(tRow);
for (cellCtr = 1; cellCtr <= cellCnt; cellCtr++) {
// Create a new cell and add it to the row.
TableCell tCell = new TableCell();
tCell.Text = "Row " + rowCtr + ", Cell " + cellCtr;
tRow.Cells.Add(tCell);
}
}
}

Calendar
El control de servidor web Calendar se puede usar para mostrar las fechas seleccionables en un calendario y
mostrar datos asociados a determinadas fechas.
Puede utilizar el control Calendar de servidor Web para hacer lo siguiente:

Mostrar y seleccionar fechas El control muestra un calendario a travs del cual los usuarios pueden ir a
cualquier da de cualquier ao.Al definir la propiedad SelectedDate, la fecha especificada se resalta en el
control.Opcionalmente, los usuarios pueden hacer clic en un da o moverse de mes en mes para ir a
fechas arbitrarias.Se puede configurar el calendario para permitir que los usuarios seleccionen varias
fechas, ya sea una semana entera o un mes entero.
Una representacin del control Calendar que muestra el mes de octubre

El control Calendar puede mostrar detalles especficos para cada da como una lista de tareas
pendientes, un programa de eventos u otra informacin similar. Esta caracterstica permite mostrar
informacin del da procedente de una base de datos.
El control Calendar se basa en el objeto DateTime y, por tanto, admite todo el intervalo de fechas que permite
ese objeto. Puede disponer, de hecho, de cualquier fecha comprendida entre los aos 0 y 9999 d.C.
En una pgina ASP.NET, el control Calendar se presenta como una tabla HTML. Por tanto, algunas propiedades
del control corresponden a varios aspectos del formato de la tabla. Algunas de estas propiedades no se admite
totalmente en algunos exploradores ms antiguos. Por tanto, no todas las caractersticas de formato estarn
disponibles en esos exploradores.

Habilitar la seleccin de fechas


De forma predeterminada, el calendario permite a los usuarios hacer clic en una fecha individual para
seleccionarla. Si est utilizando el control como calendario de slo lectura, puede deshabilitar la funcionalidad
de seleccin de fechas.

Si se habilita la seleccin de fechas, cada da del calendario contiene un control LinkButton que generar un
evento al hacer clic en l.Si habilita la seleccin de semanas o meses, se agregar una columna de vnculos en la
parte lateral del calendario para permitir que el usuario especifique qu semana se va a seleccionar.
El control Calendar genera el evento SelectionChanged cuando el usuario selecciona una fecha individual o un
intervalo de fechas.Genera el evento VisibleMonthChanged cuando el usuario muestra un nuevo mes. Creando
mtodos para estos eventos, puede determinar qu fecha o fechas seleccion el usuario y responder de forma
adecuada. Una respuesta puede consistir en personalizar la presentacin de esa fecha.
El ejemplo siguiente establece la seleccin en todos los mircoles del mes de febrero de 2000.

public void Button1_Click (object sender, System.EventArgs e)


{
SelectedDatesCollection theDates = Calendar1.SelectedDates;
theDates.Clear();
theDates.Add(new DateTime(2000,2,2));
theDates.Add(new DateTime(2000,2,9));
theDates.Add(new DateTime(2000,2,16));
theDates.Add(new DateTime(2000,2,23));
}

AdRotator
El control de servidor web AdRotator se puede usar para mostrar grficos que estn vinculados a otras pginas.
La lista de grficos que se van a mostrar y los vnculos de destino asociados se mantienen en un origen de
datos como un archivo XML o una base de datos.
El control de servidor web AdRotator proporciona una manera de mostrar anuncios en las pginas web
ASP.NET.El control muestra un archivo .gif u otra imagen grfica que se proporcione. Cuando los usuarios
hacen clic en el anuncio, se les redirige a la direccin URL de destino que se ha especificado. El control lee
automticamente la informacin del anuncio, como el nombre del archivo de grficos y la direccin URL de
destino, en una lista de anuncios que se proporciona a travs de un origen de datos, que normalmente es un
archivo XML o una tabla de base de datos.
El control AdRotator selecciona los anuncios aleatoriamente, y cambia el anuncio mostrado cada vez que se
actualiza la pgina. Puede ponderar la relevancia de los diferentes anuncios para controlar el nivel de prioridad
de los titulares, lo que permite hacer que unos anuncios se muestren con ms frecuencia que otros. Tambin
puede escribir una lgica propia que recorra los anuncios en ciclo.
El control de servidor web AdRotator se puede usar para mostrar grficos de anuncio como un archivo .gif o
una imagen similar. Entonces, se puede redirigir al usuario a una direccin URL de destino. El grfico y la
direccin URL de destino se pueden proporcionar desde un origen de datos como un archivo XML.
La informacin del anuncio puede proceder de numerosos orgenes, como los siguientes:

Un archivo XML. Puede almacenar la informacin del anuncio en un archivo XML que contenga
referencias a los titulares del anuncio y a sus propiedades asociadas.
Cualquier control de origen de datos, como los controles SqlDataSource o ObjectDataSource.Por
ejemplo, puede almacenar la informacin del anuncio en una base de datos, usar un control
SqlDataSource para recuperar esta informacin y, a continuacin, enlazar el control AdRotator al control
de origen de datos.
Lgica personalizada. Puede crear un controlador para el evento AdCreated y seleccionar un anuncio
durante el evento.

<?xml version="1.0" encoding="utf-8" ?>


<Advertisements xmlns="http://schemas.microsoft.com/AspNet/AdRotatorSchedule-File">
<Ad>
<ImageUrl>~/images/Contoso_ad.gif</ImageUrl>
<NavigateUrl>http://www.contoso-ltd.com</NavigateUrl>
<AlternateText>Ad for Contoso, Ltd. Web site</AlternateText>
<Impressions>100</Impressions>
</Ad>
<Ad>
<ImageUrl>~/images/Aspnet_ad.gif</ImageUrl>
<NavigateUrl>http://www.asp.net</NavigateUrl>
<AlternateText>Ad for ASP.NET Web site</AlternateText>
<Impressions>50</Impressions>
</Ad>
</Advertisements>

1.
2.

Coloque un control AdRotator en la pgina Web ASP.NET en la ubicacin donde desea que aparezcan
los anuncios.
Establezca la propiedad AdvertisementFile del control AdRotator en la ruta de acceso del archivo XML
que cre en el procedimiento anterior.

Cuando la pgina se ejecuta, el control AdRotator lee el archivo XML de los anuncios y selecciona uno para
mostrarlo.

Xml
Se puede usar el control de servidor web Xml para mostrar el contenido de un documento XML sin formato o
usando transformaciones XSL.
Un control Xml de servidor Web lee XML y lo escribe en una pgina Web ASP.NET en la ubicacin del control. Si
se aplica una transformacin XSL (XSLT) al XML, el resultado transformado se representar en la pgina.
La informacin de XML y XSLT puede encontrase en documentos externos o puede incluir XML en lnea. Hay
dos formas de hacer referencia a documentos externos mediante la configuracin de propiedades en el control
XML de servidor Web. Puede proporcionar una ruta de acceso al documento XML en la etiqueta del control o
puede cargar mediante programacin los documentos XML y XSLT como objetos y, a continuacin, pasarlos al
control. Si prefiere incluir el XML en lnea, escrbalo entre las etiquetas de apertura y cierre del control.
El documento XML para mostrar se especifica estableciendo una de propiedades enumeradas en la tabla
siguiente. Estas tres propiedades representan los distintos tipos de documento XML que se pueden mostrar. Se
puede mostrar un System.Xml.XmlDocument, una cadena XML o un archivo XML si se establece la propiedad
adecuada.
Para mostrar un documento XML se ha de establecer al menos una de las propiedades. Si se establece ms de
una propiedad de documento XML, se mostrar el documento al que se hace referencia en la ltima propiedad
establecida. Se omitirn los documentos de las dems propiedades.
De manera opcional, puede establecer propiedades para especificar una hoja de estilos de transformacin XSL
(XSLT) que da formato al documento XML antes de que se escriba este en el flujo de salida. Las propiedades
representan los diferentes tipos de hojas de estilos de transformacin XSL que se pueden usar para dar formato
a un documento. Se puede dar formato al documento XML mediante un objeto
System.Xml.Xsl.XslCompiledTransform o mediante un archivo de hoja de estilos de transformacin XSL,
estableciendo la propiedad adecuada. Si no se especifica ninguna hoja de estilos de transformacin XSL, se
mostrar el documento XML con el formato predeterminado.

Panel
El control de servidor web Panel proporciona un control contenedor en una pgina web ASP.NET que se puede
usar como control primario para texto esttico y para otros controles.
Puede usar el control Panel como contenedor para otros controles. Esto resulta especialmente til cuando se
crea contenido mediante programacin y es necesario encontrar una forma de insertar el contenido en la
pgina. En las siguientes secciones se describen formas adicionales en las que se puede usar el control Panel.

Contenedor para controles generados dinmicamente


El control Panel proporciona un contenedor que resulta conveniente para los controles creados en tiempo de
ejecucin. Para obtener informacin detallada, vea Agregar controles ASP.NET mediante programacin.

Agrupar controles y marcado


Puede administrar un grupo de controles y el marcado asociado como una unidad si los sita en un control
Panel y si, a continuacin, manipula el control Panel. Por ejemplo, para ocultar o mostrar un grupo de controles
en un panel, defina la propiedad Visible del panel.

Formularios con botones predeterminados


Puede situar controles TextBox y Button dentro del control Panel y, a continuacin, definir un botn
predeterminado estableciendo la propiedad DefaultButton de control Panel en el id. de un botn del panel. Si
los usuarios presionan ENTRAR al escribir en un cuadro de texto situado en el panel, el efecto ser el mismo
que si el usuario hace clic en el botn predeterminado especificado. Esto puede ayudar a los usuarios a que el
trabajo con formularios de entrada sea ms eficaz.

Agregar barras de desplazamiento a otros controles


Algunos controles, como TreeView, no tienen barras de desplazamiento integradas. Para agregar
comportamiento de desplazamiento, coloque el control en un control Panel. Para agregar barras de
desplazamiento al control Panel, establezca el valor de las propiedades Height y Width para restringir el
tamao del control Panel y, a continuacin, establezca el valor de la propiedad ScrollBars.

PlaceHolder
El control PlaceHolder permite colocar un control contenedor vaco en la pgina y, a continuacin, agregarle
dinmicamente elementos secundarios en tiempo de ejecucin.
El control de servidor web PlaceHolder permite colocar un control contenedor vaco dentro de la pgina y, a
continuacin, agregar, quitar o recorrer dinmicamente elementos secundarios en tiempo de ejecucin. El
control solo presenta sus elementos secundarios: carece por s mismo de marcado.
Por ejemplo, suponga que desea que aparezca un nmero variable de botones en una pgina web,
dependiendo de las opciones seleccionadas por los usuarios. As, los usuarios no se comparan con opciones
potencialmente equvocas que estn disponibles o no corresponden a sus necesidades individuales. Puede
crear los botones dinmicamente y agregarlos despus como elementos secundarios de un control
PlaceHolder.

BulletedList
El control BulletedList crea una lista de elementos ordenados o no ordenados (numerados) que se presenta
como elementos ul u ol de HTML, respectivamente.
El control BulletedList deriva de la misma clase ListControl que ListBox, DropDownList y otros controles de lista
de ASP.NET. Por tanto, usar el control BulletedList es como trabajar con esos controles. Puede definir los
elementos de lista del control BulletedList creando elementos estticos o enlazando el control a un origen de
datos. Si sabe en tiempo de diseo qu elementos desea mostrar, puede establecer la coleccin Items del
control en un conjunto de elementos individuales de marcado. Si los elementos que se van a mostrar son
dinmicos, puede crear la coleccin de elementos mediante cdigo en tiempo de ejecucin. Para obtener
informacin detallada, vea Cmo: Agregar elementos a controles de servidor web List.
O bien, puede enlazar el control a un origen de datos que contenga la informacin que desea mostrar. Para
obtener informacin detallada, vea Cmo: Rellenar controles de servidor web List desde un origen de datos.
Puede combinar elementos de lista estticos y elementos de lista enlazados a datos; para ello, establezca la
propiedad AppendDataBoundItems del control en true.
Al definir los elementos del control BulletedList, se definen dos propiedades: la propiedad Text y la propiedad
Value. La propiedad Text define lo que el control muestra en la pgina. La propiedad Value define un segundo
valor que no se muestra pero que quizs desee devolver cuando un usuario seleccione un elemento. Por
ejemplo, podra mostrar el nombre de un empleado como texto de un elemento, pero usar el id. del empleado
como valor. Cuando los usuarios hagan clic en el elemento, puede leer el valor directamente.

HiddenField
El control HiddenField constituye un medio para almacenar informacin en la pgina sin mostrarla. Por ejemplo,
podra almacenar un valor de preferencia del usuario en un control HiddenField para que se pueda leer en
script de cliente.Para incluir informacin en un control HiddenField, establezca su propiedad Value en el valor
que desea almacenar entre las devoluciones de datos.
La informacin de un control HiddenField no se muestra cuando el explorador presenta la pgina. Sin embargo,
se puede leer y establecer en script de cliente.Cuando se devuelve la pgina, el contenido del control
HiddenField, que incluye cualquier cambio realizado en script de cliente, est disponible en cdigo del servidor.
Se puede cambiar el valor de un control HiddenField antes de que la pgina se devuelva al servidor. Esto puede
ocurrir porque est usando el campo oculto para compartir informacin entre cdigo del servidor y script de
cliente, y el script de cliente ha actualizado el valor del control.
Para ayudarle a detectar los cambios a los datos del control, el control HiddenField genera un evento
ValueChanged si el valor del control cambia entre los postbacks. Puede controlar este evento para determinar
si un valor ha cambiado.

FileUpload
El control FileUpload le permite proporcionar a los usuarios un modo de enviar un archivo desde su equipo al
servidor.
El control FileUpload permite a los usuarios cargar imgenes, archivos de texto u otros archivos. El control
FileUpload muestra un cuadro de texto en el que los usuarios pueden escribir el nombre de un archivo que
desean cargar en el servidor. El control tambin muestra un botn Examinar que abre un cuadro de dilogo de
navegacin en archivos.(El cuadro de dilogo que se muestra depende del sistema operativo del equipo del
usuario.) Por razones de seguridad, no puede cargar previamente el nombre de un archivo en el control
FileUpload.

Controlar archivos cargados


Cuando los usuarios han seleccionado un archivo para cargar y han enviado la pgina, el archivo se carga como
parte de la solicitud. El archivo se almacena ntegramente en la memoria cach del servidor. Cuando finaliza la
carga del archivo, se ejecuta el cdigo de la pgina.
Puede tener acceso al archivo cargado de los siguientes modos:

Como una matriz de bytes incluida en la propiedad FileBytes del control FileUpload.
Como una secuencia incluida en la propiedad FileContent.
Como un objeto de tipo HttpPostedFile incluido en la propiedad PostedFile.El objeto PostedFile expone
propiedades como ContentType y ContentLength, que proporcionan informacin sobre el archivo
cargado.

Cuando el cdigo se ejecuta, puede examinar las caractersticas del archivo, como su nombre, tamao y tipo
MIME, y puede guardarlo a continuacin.Puede utilizar el archivo como una secuencia o una matriz de bytes.
Por otro lado, el control FileUpload y el objeto HttpPostedFile admiten un mtodo SaveAs que escribe el
archivo en el disco.
No hay ninguna limitacin inherente acerca de la ubicacin en la que se pueden guardar los archivos cargados.
Sin embargo, para guardar el archivo, el proceso de ASP.NET debe tener permiso para crear archivos en la
ubicacin especificada.Adems, la aplicacin tendra que configurarse para que requiriera una ruta de acceso
absoluta (y no una ruta de acceso relativa) para guardar el archivo, lo que constituye una medida de
seguridad.Si el atributo requireRootedSaveAsPath del elemento de configuracin httpRuntime se establece
en true (que es el valor predeterminado), debe proporcionar una ruta de acceso absoluta al guardar el archivo
cargado.
El tamao mximo del archivo que se puede cargar depende del valor de la opcin de configuracin
MaxRequestLength.Si los usuarios intentan cargar un archivo que supera este valor mximo, se producir un
error en la carga.

Usar el control FileUpload en actualizaciones parciales de pgina


El control FileUpload est diseado para usarse solo en escenarios de postback y no de postback asincrnico
durante la presentacin parcial de pginas.Cuando se usa un control FileUpload dentro de un control
UpdatePanel, el archivo se debe cargar usando un control que sea un objeto PostBackTrigger para el panel.Los

controles UpdatePanel se usan para actualizar regiones seleccionadas de una pgina en lugar de actualizar la
pgina entera con una devolucin de datos.Para obtener ms informacin, vea Informacin general sobre el
control UpdatePanel y Informacin general sobre la representacin parcial de pginas.

Seguridad y control FileUpload


Con el control FileUpload, los usuarios pueden cargar archivos que pueden ser malintencionados, como
archivos de script y archivos ejecutables.No puede limitar de antemano los archivos que un usuario puede
cargar.Si desea limitar los tipos de archivos que un usuario puede cargar, debe examinar las caractersticas del
archivo despus de que se haya cargado, por ejemplo la extensin de nombre de archivo y el valor de la
propiedad ContentType del archivo.
En el ejemplo siguiente se ilustra cmo se trabaja con un archivo cargado.El cdigo comprueba la extensin de
nombre del archivo cargado en una lista codificada de forma rgida con las extensiones de nombre de archivo
permitidas y rechaza todos los dems tipos de archivos.El archivo se escribe a continuacin en una carpeta
UploadedImages del sitio Web actual.El archivo cargado se guarda con el mismo nombre de archivo que tena
en el equipo cliente.Se utiliza la propiedad FileName del control FileUpload porque la propiedad FileName del
objeto HttpPostedFile devuelve la ruta de acceso completa del archivo del equipo cliente.

protected void Page_Load(object sender, EventArgs e)


{
if(IsPostBack)
{
Boolean fileOK = false;
String path = Server.MapPath("~/UploadedImages/");
if (FileUpload1.HasFile)
{
String fileExtension =
System.IO.Path.GetExtension(FileUpload1.FileName).ToLower();
String[] allowedExtensions =
{".gif", ".png", ".jpeg", ".jpg"};
for (int i = 0; i < allowedExtensions.Length; i++)
{
if (fileExtension == allowedExtensions[i])
{
fileOK = true;
}
}
}
if (fileOK)
{
try
{
FileUpload1.PostedFile.SaveAs(path
+ FileUpload1.FileName);
Label1.Text = "File uploaded!";
}
catch (Exception ex)
{
Label1.Text = "File could not be uploaded.";
}
}
else

{
Label1.Text = "Cannot accept files of this type.";
}
}
}

MultiView y View
Los controles MultiView y View de servidor Web actan como contenedores para otros controles y el marcado,
y proporcionan un medio para presentar de forma sencilla vistas alternativas de la informacin.
Puede utilizar los controles MultiView y View para realizar tareas como las siguientes:

Proporcionar conjuntos de controles alternativos basados en la eleccin del usuario o en otras


condiciones.Por ejemplo, podra permitir a los usuarios hacer su seleccin en una lista de fuentes, cada
una de las cuales estara configurada en un control View diferente.A continuacin, podra mostrar el
control View que contiene la eleccin de fuentes del usuario.Puede utilizar los controles MultiView y
View como alternativa para no crear varios controles Panel.
Crear un formulario de varias pginas.Los controles MultiView y View pueden tener un
comportamiento similar al del control Wizard.El control Wizard resulta especialmente apropiado para
crear formularios que los usuarios rellenan paso a paso.El control Wizard tambin es compatible con
otros elementos integrados de la interfaz de usuario, como un encabezado y pie de pgina, con los
botones Anterior y Siguiente, y con las plantillas.Podra utilizar un control MultiView en lugar de
Wizard si deseara crear una presentacin que cambiara en funcin de una condicin (y no de forma
secuencial) o si no necesitara utilizar las caractersticas adicionales admitidas por el control Wizard.
El control MultiView acta como un contenedor externo para uno o varios controles View.Los controles
View, a su vez, pueden contener cualquier combinacin de marcado y controles.
El control MultiView muestra un control View por vez, y expone tambin el marcado y los controles
incluidos en ese control View.Al definir la propiedad ActiveViewIndex del control MultiView, puede
especificar qu control View est visible actualmente.
Representar el contenido del control View
Si no se selecciona un control View, ste no se representa en la pgina.Sin embargo, las instancias de
todos los controles de servidor Web incluidos en los controles View se crean cada vez que se
representa la pgina, y sus valores se almacenan como parte del estado de vista de la pgina.
Ni el control MultiView ni los controles View individuales representan ningn otro marcado en la
pgina que el contenido del control View actual.Por ejemplo, los controles no representan un
elemento div del mismo modo que un control Panel.Tampoco admiten propiedades de apariencia que
se puedan aplicar en conjunto al control View actual.aunque puede asignar un tema a los controles
MultiView o View para que este tema se aplique a todos los controles secundarios del control View
actual.
Hacer referencia a controles
Cada control View admite una propiedad Controls que contiene una coleccin de los controles
incluidos en ese control View.Tambin puede hacer referencia de manera individual a los controles
incluidos en los controles View en el cdigo.Para obtener informacin detallada, vea Accessing
ASP.NET Controls Programmatically.

Navegar entre vistas


Puede desplazarse entre las vistas estableciendo la propiedad ActiveViewIndex del control MultiView en el valor
del ndice del control View que se va a mostrar.El control MultiView tambin es compatible con botones de
navegacin, que puede agregar a cada control View.

Para crear botones de navegacin, puede agregar un control de botn (Button, LinkButton o ImageButton) a
cada control View.Puede establecer las propiedades CommandName y CommandArgument de cada botn en
valores reservados para hacer que el control MultiView se desplace a otra vista.En la tabla siguiente se muestran
los valores CommandName reservados y los valores CommandArgument correspondientes.
En el ejemplo de cdigo siguiente se muestra un control MultiView con tres controles View.Cada control View
contiene un control Button que se desplaza a un control View concreto.

<asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex="0">


<asp:View ID="View1" runat="server">
View 1<br />
<br />
<asp:Button ID="Button1" runat="server"
CommandArgument="View2"
CommandName="SwitchViewByID"
Text="Go to View2" />
</asp:View>
<asp:View ID="View2" runat="server">
View 2<br />
<br />
<asp:Button ID="Button2" runat="server"
CommandArgument="View3"
CommandName="SwitchViewByID"
Text="Go to View 3" />
</asp:View>
<asp:View ID="View3" runat="server">
View 3<br />
<br />
<asp:Button ID="Button3" runat="server"
CommandArgument="View1"
CommandName="SwitchViewByID"
Text="Go to View 1" />
</asp:View>
</asp:MultiView>

Wizard
Use el control Wizard para simplificar muchas de las tareas asociadas a la compilacin de un conjunto de
formularios para recopilar los datos proporcionados por el usuario.
La recopilacin de los datos proporcionados por el usuario a travs de formularios es una tarea recurrente en el
desarrollo de pginas Web.Un grupo de formularios que se utiliza para llevar a cabo una tarea se suele
denominar asistente.
El control Wizard de ASP.NET simplifica muchas de las tareas asociadas a la compilacin de varios formularios y
la recopilacin de los datos proporcionados por el usuario.El control Wizard proporciona un sencillo
mecanismo que permite compilar y agregar pasos o reordenar los pasos existentes con facilidad.Puede
compilar navegaciones lineales y no lineales, as como personalizar la navegacin del usuario del control sin
necesidad de escribir cdigo.
Una prctica frecuente consiste en compilar un grupo de formularios interconectados con el fin de dividir la
recoleccin de datos.Para llevar a cabo esta tarea, puede administrar la navegacin entre los formularios, la
persistencia de los datos y la administracin de estados en cada paso.Mediante el control Wizard, puede utilizar
pasos diferenciados para recopilar datos. De esta forma, los usuarios pueden navegar por los pasos segn su
criterio y se facilita su labor.Como desarrollador, no tiene que preocuparse por conservar los datos en las
pginas porque el control mantiene el estado mientras el usuario finaliza los distintos pasos.

Pasos del asistente


El control Wizard utiliza los pasos para definir secciones diferentes de entrada de datos por parte del
usuario.Cada paso del control est determinado por StepType que indica si se trata del paso inicial, de un paso
intermedio o del paso final.El asistente puede tener todos los pasos intermedios necesarios.Puede agregar
controles diferentes, como TextBox o ListBox, para recopilar los datos proporcionados por el usuario.Cuando
llega al paso Complete, todos los datos estn disponibles.En el siguiente ejemplo de cdigo se muestra el
control Wizard con dos pasos.

<asp:Wizard ID="Wizard1" Runat="server">


<WizardSteps>
<asp:WizardStep Runat="server" Title="Step 1">
</asp:WizardStep>
<asp:WizardStep Runat="server" Title="Step 2">
</asp:WizardStep>
</WizardSteps>
</asp:Wizard>

En cada paso, puede agregar controles y etiquetas, as como aceptar los datos del usuario.El control Wizard le
ayudar a administrar el paso que se va a mostrar y a mantener los datos recopilados.

Navegacin con el asistente


El control Wizard proporciona caractersticas tanto para la navegacin lineal como para la no lineal.La
administracin de estados del control permite al usuario avanzar y retroceder por los pasos, as como
seleccionar un paso concreto en cualquier punto, siempre que se muestre la barra lateral.Puede personalizar el

texto de la navegacin en el elemento raz del control asp:Wizard mediante las propiedades
StepNextButtonText, StepPreviousButtonTexty FinishCompleteButtonText.

<asp:Wizard ID="Wizard1" Runat="server"


StepNextButtonText=" Next >> "
StepPreviousButtonText=" << Previous "
FinishCompleteButtonText=" Done! ">

Personalizar otros aspectos del control Wizard


El control Wizard muestra automticamente un ttulo y el paso actual del control.El ttulo se personaliza con la
propiedad HeaderText.Puede ajustar la plantilla del encabezado mediante la propiedad HeaderTemplate.
Si lo desea, puede mostrar un botn de cancelacin estableciendo la propiedad DisplayCancelButton en true.
Mediante la propiedad NavigationButtonStyle del control Wizard resulta sencillo que todos los botones tengan
un estilo comn, aunque esta propiedad tambin proporciona flexibilidad para personalizar cada botn
individualmente.La propiedad NavigationButtonStyle se aplica a todos los botones representados.Sin embargo,
puede reemplazar este estilo estableciendo la propiedad de estilo de cada botn.

ImageMap
El control ImageMap de ASP.NET le permite crear una imagen con regiones individuales en las que los
usuarios pueden hacer clic, denominadas zonas activas.Cada una de estas zonas activas puede ser un
hipervnculo independiente o un evento de devolucin de datos.
El control ImageMap est formado por dos elementos.El primero es una imagen, que puede ser un grfico en
cualquier formato estndar grfico Web, como un archivo .gif, .jpg o .png.
El segundo elemento es una coleccin de controles HotSpot.Cada control de zona activa es un elemento
diferente que es de tipo CircleHotSpot, RectangleHotSpot o PolygonHotSpot.Para cada control de zona
activa, defina las coordenadas que especifican la ubicacin y el tamao de la zona activa.Por ejemplo, si crea un
control CircleHotSpot, defina las coordenadas x e y del centro y del radio del crculo.
Puede definir todas las zonas activas necesarias para la imagen.No es necesario definir zonas activas para que
se cubra todo el grfico.
Puede especificar lo que ocurre cuando un usuario hace clic en una zona activa.Se puede configurar cada zona
activa como un hipervnculo que va a una direccin URL proporcionada para esa zona activa.O bien, puede
configurar el control para que se realice un postback cuando un usuario haga clic en una zona activa y
proporcionar un valor nico para cada zona activa.La devolucin de datos provoca el evento Click del control
ImageMap.En el controlador de eventos, puede leer el valor nico asignado a cada zona activa.

Das könnte Ihnen auch gefallen