NumericUpDown

Descripción

El NumericUpDown extiende al control Web TextBox habilitando unos botones que incrementan/decrementan el valor de éste. El incremento/decremento puede corresponder a:
- El simple +1/-1 aritmético.
- Subir o bajar dentro de un listado de valores que le demos.
- Llamar a un servicio Web o un método de la página diferente según si incrementamos o decrementamos.

Podremos asignar botones para que hagan de incrementador/decrementador o dejar los que hay por defecto.

Propiedades

• TargetControlID: ID del TextBox sobre el que vamos a actuar.
• Width: anchura combinada del TextBox y sus botones de arriba/abajo que vienen dados por defecto (mínimo 25). Si elegimos que otros botones hagan esa función, está propiedad se ignorará.
• RefValues: listado de valores sobre los que querremos ir subiendo y bajando. Los daremos en forma de string separado por punto y coma ‘;’.
• TargetButtonDownID/TargetButtonUpID: ID de los botones que hará la función de incrementar y decrementar.
• ServiceDownPath/ServiceUpPath: path del servicio Web al que llamaremos cuando se incremente o decremente. En caso de estar trabajando con métodos de página no utilizaremos esta propiedad.
• ServiceDownMethod/ServiceUpMethod: método que será llamado para incrementar/decrementar el TextBox. Deberá tener la forma:
[WebMethod]
public int NextValue(int current, string tag)
{…}
• Tag: se corresponde con el segundo parámetro del método al que llamaríamos, y lo podemos utilizar para distinguir qué elemento está llamando al método.

Ejemplo

En nuestro sencillo ejemplo, vamos a viajar por los planetas del sistema solar, donde ya no incluiremos a nuestro querido Plutón.

<asp:TextBox ID="TextBox1" runat="server" Text="Tierra" Width="120" style="text-align:center"></asp:TextBox>

<cc1:NumericUpDownExtender ID="NumericUpDownExtender1" runat="server
TargetControlID="TextBox1" Width="120" RefValues="Mercurio;Venus;Tierra;Marte;Júpiter;Saturno;Urano;Neptuno"
ServiceDownMethod="" ServiceUpMethod="" TargetButtonDownID="" TargetButtonUpID="">
</cc1:NumericUpDownExtender>