Alcaide Posted August 29, 2011 Report Share Posted August 29, 2011 Amigos, bom dia!Estou com uma dúvida ao montar uma string, é o seguinte:Tenho 100 TextBox em um form, e todos numerados de 1 a 100 e quero fazer um insert no meu banco da seguinte forma:For I = 0 To 100 Insere = "INSERT into CCRGAB (GABQUEST, GABQUESTRES, GABTIPPROVA, GABTITPROVA)" Insere = Insere + "Values ('" & I & "', '" & Txt(i).text & "', '" & CmbNumProva.Text & "', '" & TxtTitulo.Text & "') " next iBom, explicando melhor...Quero pegar assim:Se o I ta no 1 eu vou pegar a txt1.textSe o I ta no 2 eu vou pegar a txt2.texte assim sucessivamente !Tentei fazer indexando txt(i).text mas não rola dessa forma hehehe... e não conheço outra forma!Poderiam me ajudar nesta por favor ??? Quote Link to comment Share on other sites More sharing options...
0 Messias Posted August 30, 2011 Report Share Posted August 30, 2011 (edited) Amigos, bom dia!Estou com uma dúvida ao montar uma string, é o seguinte:Tenho 100 TextBox em um form, e todos numerados de 1 a 100 e quero fazer um insert no meu banco da seguinte forma:For I = 0 To 100Insere = "INSERT into CCRGAB (GABQUEST, GABQUESTRES, GABTIPPROVA, GABTITPROVA)"Insere = Insere + "Values ('" & I & "', '" & Txt(i).text & "', '" & CmbNumProva.Text & "', '" & TxtTitulo.Text & "') "next iBom, explicando melhor...Quero pegar assim:Se o I ta no 1 eu vou pegar a txt1.textSe o I ta no 2 eu vou pegar a txt2.texte assim sucessivamente !Tentei fazer indexando txt(i).text mas não rola dessa forma hehehe... e não conheço outra forma!Poderiam me ajudar nesta por favor ???Uma forma de acessar dinamicamente um campo texto, é utilizando o metodo findcontrolNo exemplo abaixo os campos textos estão definidos diretamente no Form (página) se seus textos estiverem em algum outro container, tem que procurar no container especifico.protected void Button1_Click(object sender, EventArgs e) { // Crio uma variavel textoatual do tipo TEXTBOX e procuro no (container) form o campo: TextBox + i // e ao encontrar o campo retorno também um TEXTBOX Label1.Text = ""; for (int i = 1; i < 3; i++) { TextBox textoatual = this.Form.FindControl("TextBox" + i.ToString()) as TextBox; if (textoatual.Text != null) { Label1.Text = Label1.Text.ToString() + textoatual.Text.ToString(); } } } No Exemplo acima criei duas textbox com nomes padroes TextBox1 e TextBox2 juntei as duas e mostrei no Label1. segue abaixo se você quiser testar, a página que utilizei, e o código completo da página: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "[url=http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd]http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd[/url]"> <html xmlns="[url=http://www.w3.org/1999/xhtml]http://www.w3.org/1999/xhtml[/url]"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox> <asp:button ID="Button1" runat="server" text="Button" onclick="Button1_Click" /> </div> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> </form> </body> </html> código em c# using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { // Crio uma variavel textoatual do tipo TEXTBOX e procuro no (container) form o campo: TextBox + i // e ao encontrar o campo retorno também um TEXTBOX Label1.Text = ""; for (int i = 1; i < 3; i++) { TextBox textoatual = this.Form.FindControl("TextBox" + i.ToString()) as TextBox; if (textoatual.Text != null) { Label1.Text = Label1.Text.ToString() + textoatual.Text.ToString(); } } } }SdsMessias Vilalta Edited August 31, 2011 by kuroi Adicionar tag CODE Quote Link to comment Share on other sites More sharing options...
0 Alcaide Posted August 30, 2011 Author Report Share Posted August 30, 2011 Amigos, bom dia!Estou com uma dúvida ao montar uma string, é o seguinte:Tenho 100 TextBox em um form, e todos numerados de 1 a 100 e quero fazer um insert no meu banco da seguinte forma:For I = 0 To 100Insere = "INSERT into CCRGAB (GABQUEST, GABQUESTRES, GABTIPPROVA, GABTITPROVA)"Insere = Insere + "Values ('" & I & "', '" & Txt(i).text & "', '" & CmbNumProva.Text & "', '" & TxtTitulo.Text & "') "next iBom, explicando melhor...Quero pegar assim:Se o I ta no 1 eu vou pegar a txt1.textSe o I ta no 2 eu vou pegar a txt2.texte assim sucessivamente !Tentei fazer indexando txt(i).text mas não rola dessa forma hehehe... e não conheço outra forma!Poderiam me ajudar nesta por favor ???Uma forma de acessar dinamicamente um campo texto, é utilizando o metodo findcontrolNo exemplo abaixo os campos textos estão definidos diretamente no Form (página) se seus textos estiverem em algum outro container, tem que procurar no container especifico. protected void Button1_Click(object sender, EventArgs e) { // Crio uma variavel textoatual do tipo TEXTBOX e procuro no (container) form o campo: TextBox + i // e ao encontrar o campo retorno também um TEXTBOX Label1.Text = ""; for (int i = 1; i < 3; i++) { TextBox textoatual = this.Form.FindControl("TextBox" + i.ToString()) as TextBox; if (textoatual.Text != null) { Label1.Text = Label1.Text.ToString() + textoatual.Text.ToString(); } } }No Exemplo acima criei duas textbox com nomes padroes TextBox1 e TextBox2juntei as duas e mostrei no Label1. segue abaixo se você quiser testar, a página que utilizei, e o código completo da página:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %><!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></title></head><body> <form id="form1" runat="server"> <div> <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox> <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox><asp:button ID="Button1" runat="server" text="Button" onclick="Button1_Click" /> </div> <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label> </form></body></html>código em c#using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;public partial class _Default : System.Web.UI.Page{ protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { // Crio uma variavel textoatual do tipo TEXTBOX e procuro no (container) form o campo: TextBox + i // e ao encontrar o campo retorno também um TEXTBOX Label1.Text = ""; for (int i = 1; i < 3; i++) { TextBox textoatual = this.Form.FindControl("TextBox" + i.ToString()) as TextBox; if (textoatual.Text != null) { Label1.Text = Label1.Text.ToString() + textoatual.Text.ToString(); } } }}SdsMessias VilaltaMessias, boa noite!Muito obrigado pela sua ajuda, mas acabei resolvendo de uma forma não muito "correta", a famosa "gambiarra" heheheheFiz o seguinte:select case Icase 1Auxiliar = Txt1.textcase 2 = Txt2.texte assim foi ... Mas, mesmo assim te agradeço ! Quote Link to comment Share on other sites More sharing options...
Question
Alcaide
Amigos, bom dia!
Estou com uma dúvida ao montar uma string, é o seguinte:
Tenho 100 TextBox em um form, e todos numerados de 1 a 100 e quero fazer um insert no meu banco da seguinte forma:
For I = 0 To 100
Insere = "INSERT into CCRGAB (GABQUEST, GABQUESTRES, GABTIPPROVA, GABTITPROVA)"
Insere = Insere + "Values ('" & I & "', '" & Txt(i).text & "', '" & CmbNumProva.Text & "', '" & TxtTitulo.Text & "') "
next i
Bom, explicando melhor...
Quero pegar assim:
Se o I ta no 1 eu vou pegar a txt1.text
Se o I ta no 2 eu vou pegar a txt2.text
e assim sucessivamente !
Tentei fazer indexando txt(i).text mas não rola dessa forma hehehe... e não conheço outra forma!
Poderiam me ajudar nesta por favor ???
Link to comment
Share on other sites
2 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.