Discussion:
Como asignar un valor a varios Textbox desde C# .Net mediante un for next?
(demasiado antiguo para responder)
jazdian
2008-08-21 14:13:29 UTC
Permalink
Hola a todos:

Tengo 10 Textbox en mi página WEB y sus IDs son Text1, Text2, Text3,
etc... quiero asignar un valor a los 10 TextBox mediante un bucle.
Traté de hacer algo parecido a como se hace en VisualBasic pero no me
funciona. Este es mi código.

for (int i = 1; i <= 10; i++)
{
this.TextBox[i].Text = "Valor a asignar";
}

Espero alguien me pueda ayudar.

Saludos a todos
Juan Perez
2008-08-21 14:35:22 UTC
Permalink
Post by jazdian
Tengo 10 Textbox en mi página WEB y sus IDs son Text1, Text2, Text3,
etc... quiero asignar un valor a los 10 TextBox mediante un bucle.
Traté de hacer algo parecido a como se hace en VisualBasic pero no me
funciona. Este es mi código.
for (int i = 1; i <= 10; i++)
{
this.TextBox[i].Text = "Valor a asignar";
}
Espero alguien me pueda ayudar.
Saludos a todos
Sería algo así:

private void btnLimpiar_Click(object sender, EventArgs e)
{
//Limpiar de manera rapida
foreach (Control c in this.Controls)
{
if (c is TextBox)
{
c.Text = "";
//Enfoco en el primer TextBox
this.textBox1.Focus();
}
}
}

Fuente:
http://geeks.ms/blogs/jberrocal/archive/2006/12/14/limpiar-informacion-de-los-controles-textbox-s-rapidamente.aspx

Saludos!
jazdian
2008-08-21 16:34:17 UTC
Permalink
Post by Juan Perez
Post by jazdian
Tengo 10 Textbox en mi página WEB y sus IDs son Text1, Text2, Text3,
etc... quiero asignar un valor a los 10 TextBox mediante un bucle.
Traté de hacer algo parecido a como se hace en VisualBasic pero no me
funciona. Este es mi código.
for (int i = 1; i <= 10; i++)
{
this.TextBox[i].Text = "Valor a asignar";
}
Espero alguien me pueda ayudar.
Saludos a todos
private void btnLimpiar_Click(object sender, EventArgs e)
{
     //Limpiar de manera rapida
     foreach (Control c in this.Controls)
     {
       if (c is TextBox)
         {
            c.Text = "";
            //Enfoco en el primer TextBox
             this.textBox1.Focus();
         }
      }
}
Fuente:http://geeks.ms/blogs/jberrocal/archive/2006/12/14/limpiar-informacio...
Saludos!
Es una buena solución, sin embargo, necesito tanto ingresar un valor
para ponerlos en blanco de un solo ckick (y la solución que das es
perfecta) Pero cuando el usuario llene los texbox recuperar los
valores para guardarlos en una base, pero el problema es que quiero
insertar 5 registros de una vez.

Así tengo mi formulario:

TextBoxA1 TextBoxB1 Registro 1
TextBoxA2 TextBoxB2 Registro 2
TextBoxA3 TextBoxB3 Registro 3
TextBoxA4 TextBoxB4 Registro 4
TextBoxA5 TextBoxB5 Registro 5

[Guardar Datos] <---- Mi botón para guardar los cinco registros de una
vez desencadena este evento. Pero se me hace muy repetitivo. ¿Hay una
forma de insertar estos cinco registros mediante un bucle for o
foreach?

protected void Button1_Click(object sender, EventArgs e)
{
//Primer Registro
1------------------------------------------------------------
string InsertarDatos = "INSERT INTO MiTabla "
+ "(idNombre, Nombre) "
+ "VALUES (" + Convert.ToInt16(this.TextBoxA1.Text) +
", '" + This.TextBoxB1.Text + "') ";
SqlConnection MyConexion = new SqlConnection(miconexion);
System.Data.SqlClient.SqlCommand MyUpdate = new
SqlCommand(InsertarDatos, MyConexion);
MyUpdate.Connection.Open();
MyUpdate.ExecuteNonQuery();
//Primer Registro
1------------------------------------------------------------

//Registro
2------------------------------------------------------------
string InsertarDatos = "INSERT INTO MiTabla "
+ "(idNombre, Nombre) "
+ "VALUES (" + Convert.ToInt16(this.TextBoxA2.Text) +
", '" + This.TextBoxB2.Text + "') ";
SqlConnection MyConexion = new SqlConnection(miconexion);
System.Data.SqlClient.SqlCommand MyUpdate = new
SqlCommand(InsertarDatos, MyConexion);
MyUpdate.ExecuteNonQuery();
//Registro
2------------------------------------------------------------

//Registro
3------------------------------------------------------------
... mismo código
//Registro
3------------------------------------------------------------

//Registro
4------------------------------------------------------------
... mismo código
//Registro
4------------------------------------------------------------

//Registro
5------------------------------------------------------------
... mismo código
//Registro
5------------------------------------------------------------

}

Espero hayauna solución donde utilice menos código, pues no quiero
imaginar cuando tenga que insertar 10, 20, 30...etc... registros a la
vez.

Espero puedan ayudarme.
Chelo
2008-08-21 16:54:41 UTC
Permalink
Pues yo lo hago con el 'tag' de cada control
ejemplo frmCLientes

textbox1.tag="Nombre"
textbox2.tag="Direccion"
textbox3.tag="Fono"

recuperar datos
''' lleno el data set o tatable
'' le asignas a un reader o un row.. en este caso un reader

mireader.read();
foreach(Controls control in FrmClientes.Controls)
{
string campo=control.tag.tostring();
control.text=mireader[campo].tostring();
}

eso es lo basico. y para guardar pues generas un sql con insert o
update con los tag's y text's de los controles, o mas facil,lo haces a
la inversa de esto, remplazando el reader por un datatable y luego
guardarlo...

espero que te de alguna idea.
jazdian
2008-08-21 18:33:58 UTC
Permalink
Post by Chelo
Pues yo lo hago con el 'tag' de cada control
ejemplo frmCLientes
textbox1.tag="Nombre"
textbox2.tag="Direccion"
textbox3.tag="Fono"
recuperar datos
''' lleno el data set o tatable
'' le asignas a un reader o un row.. en este caso un reader
mireader.read();
foreach(Controls control in FrmClientes.Controls)
{
   string campo=control.tag.tostring();
   control.text=mireader[campo].tostring();
}
eso es lo basico. y para guardar pues generas un sql con insert o
update con los tag's y text's de los controles, o mas facil,lo haces a
la inversa de esto, remplazando el reader por un datatable y luego
guardarlo...
espero que te de alguna idea.
Ok:

Me han dado ideas, voy implantarlas mi web y después les comento como
quedó.

Gracias y saludos a todos.

Continúe leyendo en narkive:
Resultados de búsqueda para 'Como asignar un valor a varios Textbox desde C# .Net mediante un for next?' (Preguntas y respuestas)
12
respuestas
Donde puedo encontrar buenos manuales y ejemplos de código de Visual Basic 6?
iniciado 2006-09-20 17:03:44 UTC
diseño y programación
Loading...