Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
How to bind dataset to textbox?
Message
De
22/10/2013 04:10:51
 
 
Information générale
Forum:
ASP.NET
Catégorie:
Autre
Versions des environnements
Environment:
VB 9.0
OS:
Windows Server 2012
Network:
Windows 2008 Server
Database:
MS SQL Server
Application:
Web
Divers
Thread ID:
01585915
Message ID:
01586031
Vues:
42
>>>>>On the same page I have a GridView bound to a dataset. Below the GridView there is a textbox (or several textboxes). As user navigates through the GridView (clicking on this or that row) I want the value/text in the textbox(s) to be updated according to new row in the dataset. My understanding is I need to bind the textbox(s) to the same dataset. How do you do it? An example, of one textbox binding to the dataset would be very helpful.
>>>>
>>>>If you don't mind round-tripping to the server you can wire up the GridView.SelectedIndexChanged event and do something like this:
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
>>>>        {
>>>>            TextBox1.Text = GridView1.SelectedRow.Cells[2].Text;
>>>>            //etc
>>>>        }
>>>
>>>I prefer not to make the "trip" back to the server. I am working on having a button field on the GridView and wire it to a method of the page. The only thing I don't know - yet - if the page has to be reposted on the call to this method. If so I will look for way to do it with jQuery so there is no reposting of the page and no trip back to the server.
>>>Thank you.
>>
>>Not quite so easy. Wire up the GridView.RowDataBound event in c#:
       protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
>>        {
>>            if (e.Row.RowType == DataControlRowType.DataRow)
>>            {
>>                e.Row.Attributes.Add("onClick", "javascript:void selectRow(this);");
>>            }
>>        }
then script on the page:
 function selectRow(i) {
>>            document.getElementById("TextBox1").value = i.cells[5].innerText;
>>        }
>
>Thank you very much. I will try to "translate" your code into jQuery code. I have been studying jQuery over the weekend and am anxious to try it.
jQuery would just be :
function selectRow(i) {
               $('#TextBox1').val(i.cells[5].innerText);
        }
TBH, when I need this type of functionality now I use WebAPI and angular. angular gives you a nice MVVM two-way binding on the client.
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform