Web Forms :: Save The Data Values From The Dynamic Textbox?
Jan 27, 2011
i have d design for dynamic textbox control ..but now i want to save the data values from the dynamic textbox...refer my following codings for design and based on that suggest me the codings for saving the data...
I have a self-made webuser control named UCLabeltextBox with 1 label and 1 textbox. When pressing the save button the page is refreshed and the value of the textbox is erased. Anyone a solution to this? Here's my code:
protected void Button2_Click(object sender, EventArgs e) { foreach (Control ctl in Dynamic.Controls) { if (ctl is TextBox) { TextBox tb = (TextBox)ctl; using (SqlConnection con = new SqlConnection(_connStr)) {
What I want to happen is, I will populate or load the patient Name into TextBox. If the patient are 20, the page will dynamically create 20 textboxes to display the patient name..And when I click save, Changes will be save base on the input on textbox..
I have generated dynamic text boxes for each table row there are 6 text boxes
1. For the first two text boxes the values given by the user should be in valid range(this range comes from the database).User is allowed to enter the value within that specified values only. How to achieve this? I have taken drop down lists but if the values in drop down increases selecting required value is tedious to the user.. (if it is having 1000 values) and while I am retrieving the values I have written query such as Null values ignored. But I am getting NULL values in the dropdown here is the code what I have written,
(Database is Oracle) If Not (OledbCmd.Equals(String.Empty) Or OledbCmd Is Nothing) Then OledbDA.SelectCommand = OledbCmd OledbDA.Fill(ds, "textDB") dt = ds.Tables("testDb") If (dt.Rows.Count > 0) Then ddlist.DataSource = dt If UCase(s) = "NUMBER" Then ddlist.DataValueField = "num" ElseIf UCase(s) = "NAME" Then ddlist.DataValueField ="name" End If ddlist.DataBind() ddlist.Items.Insert(0, "Select") ddlist.SelectedIndex = 0 Else ddlist.Items.Insert(0,"Norecords") End If End If
2. In the rows generated when user presses functional key F3 then the values of the above row(previous row) have to be copied in present row. similarly for F4 column copying. This I achieved through the Java script. But I have many forms requirement is same. where as text boxes id differ. how can I generalize the One function to work for all forms. I wrote as like this.
In my asp page when press a button, a gridview will be populated with data from db, but beside the columns from database i need a new dynamic column in gridview, to contain only dropdownlist with items number from 0-n.
This far i managed to do it, with some research on internet (i used an intemerdiet datatable to apply ItemTemplate from GridViewTemplate class, and than merged it to datatable containg the result from query, so the gridview's datasource si the merge of this 2 datatables).
The issue is that i don't now how can i access the values selected by user in the dinamically dropdownlists, 'cause i have to save them in DB.
Attach is my GridViewTemplate class code, and .cs and .aspx code.
I have an editable gridview with blank cells. User enters some numeric data in cells and also user can clicks a button to add new row to gridview. My problem is that, as soon as button click event is fired, the page refreshes & the gridview becomes empty. Can anybody tell me, how can I save values in gridview until the user saves all changes to the server in the end
I have a code which generated dynamic gridviews based on a column ('c_AnalyticalSystemID"). Now I have a samll problem in passing cell parameter into a textbox which I clicked on a datagridview.
the code is :
[Code]....
Is it correct what I'm doing to get the value of cell into a textbox when clicked on a paticular datagridview.
I have a gridview and users would select some records and would click on the submit button and i will be saving those records into database using a stored proc.... now .... just below the gridview and above the submit button there are few checkboxes by default they wud be checked. How would i save the selected values and the checked boxes in database i wrote the stored proc for the gridview but how would i save the checked checkboxes into the same table.
For i As Integer = 0 To gvSelectScreen.Rows.Count - 1 Dim chkTemp As CheckBox = TryCast(gvSelectScreen.Rows(i).FindControl("cbStatus"), CheckBox) If chkTemp.Checked Then ContractNumber = gvSelectScreen.Rows(i).Cells(0).Text ClientProgramNumber = gvSelectScreen.Rows(i).Cells(1).Text ClientProgramName = gvSelectScreen.Rows(i).Cells(2).Text StartDate = CType(gvSelectScreen.Rows(i).FindControl("txtStartDate"), TextBox).Text EndDate = gvSelectScreen.Rows(i).Cells(5).Text Dim connStr As String = ConfigurationManager.ConnectionStrings("MainConnectionString").ConnectionString Dim myCon As New SqlConnection(connStr) Dim cmd As New SqlCommand("usp_ParametersFromGrid") Dim dt As New DataTable cmd.CommandType = CommandType.StoredProcedure cmd.Parameters.Add("@ContractNumber", SqlDbType.VarChar, 22).Value = ContractNumber.ToString() cmd.Parameters.Add("@ClientProgramNumber", SqlDbType.VarChar, 22).Value = ClientProgramNumber.ToString() cmd.Parameters.Add("@ClientProgramName", SqlDbType.VarChar, 100).Value = ClientProgramName.ToString() cmd.Parameters.Add("@StartDate", SqlDbType.VarChar, 20).Value = StartDate.ToString() cmd.Parameters.Add("@EndDate", SqlDbType.VarChar, 20).Value = EndDate.ToString() cmd.Parameters.Add("@RequestID", SqlDbType.VarChar, 50).Value = RequestID.ToString() cmd.Connection = myCon myCon.Open() cmd.ExecuteNonQuery() myCon.Close() End If
Now above the submit button as i said, there are few checkboxes and they are checked by default...how would i save the selected item (in the gridview and the checked checkbox values in the same row in the database(sql server)
In ASP.Net, I want to give a user an ability to save the text entered in the textbox to the client machine. So that, user can copy paste it for later use.
Is there a way to show, save as dialog so that user can save the text in a text file on client machine? or, if there is any other alternative?
I am dealing with dynamic fields in a for loop and now I need to retrieve the values that are being typed in the dynamic fields, any idea how can I do that? 2)also when I click the submit button, upon postback, the dynamic fields have gone missing, have been trying to slove that, but i did not, anyone knows how to deal with this? kinda urgent :x
3) and How do you compare the 2 dynamic fields? For eg: Im comparing the tbSch[i] to tbSch[i], so that the dates cannot be the same, am using a compare validator, but it throws me error that im comparing the same fields :) even though i change to ("tbSch" + i) for both, sorry Will provide my code snippet as follow :D tbNum is a textbox where user enter numbers and click generate
protected void btnGen_Click(object sender, EventArgs e) { for (int i = 0; i < Convert.ToInt32(tbNum.Text); i++) { // label and textbox needed Label lblSch = new Label(); TextBox tbSch = new TextBox(); Label lblWsGrp = new Label(); DropDownList ddlWsGrp = new DropDownList(); CompareValidator cvSame = new CompareValidator(); cvSame.ID = "cvSame" + i; cvSame.ErrorMessage = "Date cannot be the same"; cvSame.Operator = ValidationCompareOperator.NotEqual; cvSame.Type = ValidationDataType.Date; cvSame.Display = ValidatorDisplay.Dynamic; cvSame.EnableViewState = true; cvSame.ControlToValidate = (tbSch.ID);<<<<< what should be the value in here? cvSame.ControlToCompare = (tbSch.ID);<<<<<<<<<< and here? //schdule date lblSch.ID = "lblSch" + i; lblSch.Text = "Session Date : "; lblSch.EnableViewState = true; tbSch.ID = "tbSch" + i; tbSch.Width = 210; tbSch.Height = 27; tbSch.EnableViewState = true; //workshop grp lblWsGrp.ID = "lblwsgrp" + i; lblWsGrp.Text = "Workshop Group : "; lblWsGrp.EnableViewState = true; ddlWsGrp.ID = "ddlWsGrp" + i; ddlWsGrp.Height = 27; ddlWsGrp.Width = 210; ddlWsGrp.EnableViewState = true; ddlWsGrp.Items.Add("1"); ddlWsGrp.Items.Add("2"); //table to store data TableRow trow = new TableRow(); TableRow trow2 = new TableRow(); //row1 TableCell tc1 = new TableCell(); TableCell tc2 = new TableCell(); TableCell tc3 = new TableCell(); TableCell tc4 = new TableCell(); //row2 TableCell tc5 = new TableCell(); TableCell tc6 = new TableCell(); TableCell tc7 = new TableCell(); TableCell tc8 = new TableCell(); TableCelltc9 = new TableCell(); tc1.Controls.Add(lblSch); tc2.Controls.Add(tbSch); tc3.Controls.Add(lblWsGrp); tc4.Controls.Add(ddlWsGrp); tc5.Controls.Add(space); tc6.Controls.Add(CeSess); tc7.Controls.Add(space); tc8.Controls.Add(space); tc9.Controls.Add(cvSame) trow.Cells.Add(tc1); trow.Cells.Add(tc2); trow.Cells.Add(tc3); trow.Cells.Add(tc4); trow2.Cells.Add(tc5); trow2.Cells.Add(tc6); trow2.Cells.Add(tc7); trow2.Cells.Add(tc8); trow2.Cells.Add(t9); this.table3.Rows.Add(trow); this.table3.Rows.Add(trow2); } }
This works fine, but I would now also like to select the data in the textbox so the user does not have to select the text before typing, they can just type straight away. I have been trying to use:
I have a two buttons ( button1 and button2 ), a panel ( panel1 ), a label ( labe1 ) on my Web page ( coded with asp.net and c# ). I want to create 2 textboxs on my page when I click on button1 ( button1_click ).
After that, when I click button2 ( button2_click ), I want to get data of textbox (added on runtime) and write them on label1.
This application is part of my master application. This is very important for me...
i have 2 template field columns time and total_time in a gridview.. time column has a label in the item template and a textbox in th edit item template..
similarly, total_time has a label in the item template and a textbox in the edit item templte..
what i need is, when the user enters a value in the time textbox,it must get updated in the total_time textbox.. and on edit,when the user changes the value of the time textbox ,dis value must be ADDED to the total_time textbox.. both should be displayed in the label also..
how to load Gridview HeaderText values from resource (.resx) files.I want to display headertext values for Gridview based on two different application dynamically.
I am Developing a database web applicationI am Creating web controls on page at runtime i.e in Page_Init event. No textbox are placed on .aspx page at design timeI have a datatable filled with a single record.now i want to bind a textbox (created at runtime) with a column of datatable so that when a page is loaded value in datatable's column is displayed in textbox.Other Important thing i want is when i make any changes in Textbox, It should be reflected automatically in a column to which textbox is binded. So while saving records i can save it directly from datatable. I dont want to write following tedious code before savinge.g.
i am creating dynamic textbox onRowCreated event and its creating without any issue but the question is how to read value of created textbox when the use hit on update button?
I have gridview created dynamical and added text box to the footer so I can insert into the gridview but I'm using findcontrol but it saying the value is null.
I'm new to web dev and c# so please bare with me. I am trying to create a dynamic gridview in a web form for users to to answer questions with (code below).
The dificulty im having is that i am nesting a dropdwonlist in the gridview and want to be able to dynamically set the list values based on parameters (of the row they are on). These values are in the main dataset for the gridview as each row represents a questionid and question text and then a ddl for the criteria...
I just don't know how to set the values for the dropdown all the code so far is below... just need to be able to populate the dropdowns with the relevant values.
I have created a stored proc to return the different criteria based on the questionid and questionGroupid which is the dataset that populates the other fields in the gridview: dbo.usp_QuestionCriteria @QuestionGroupId, @QuestionId
I have added this as a tableadapter called criteriaTableAdapter in a xsd file as well using the wizard... not sure if this is the right option though or just use the same method as i have for the other stored procedure as in the code below:
[CODE
]using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using System.Data.SqlClient; public partial class _Default : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["Sql"].ConnectionString); con.Open(); SqlCommand com = new SqlCommand("usp_QuestionGroupDS", con); com.CommandType = CommandType.StoredProcedure; SqlDataAdapter ada = new SqlDataAdapter(com); DataSet ds = new DataSet(); ada.Fill(ds); for (int i = 0; i < ds.Tables.Count; i++) { if (ds.Tables[i].Rows.Count > 0) { GridView gvDynamicQuestion = new GridView(); gvDynamicQuestion.Width = Unit.Pixel(700); gvDynamicQuestion.BorderWidth = Unit.Pixel(0); gvDynamicQuestion.Caption = "<div id="nifty" class="QuestionGroup"> <b class="rtop"><b class="r1"></b><b class="r2"></b><b class="r3"></b><b class="r4"></b></b>" + ds.Tables[i].Rows[0]["Category"].ToString() + " Questions<b class="rbottom"><b class="r4"></b><b class="r3"></b><b class="r2"></b><b class="r1"></b></b></div>"; gvDynamicQuestion.AutoGenerateColumns = false; gvDynamicQuestion.ShowFooter = true; TemplateField tf = null; tf = new TemplateField(); tf.HeaderTemplate = new DynamicGridViewTextTemplate("QuestionId", DataControlRowType.Header); tf.ItemTemplate = new DynamicGridViewTextTemplate("QuestionId", DataControlRowType.DataRow); tf.FooterTemplate = new DynamicGridViewTextTemplate(DataControlRowType.Footer, ds.Tables[i].Rows.Count); gvDynamicQuestion.Columns.Add(tf); tf = new TemplateField(); tf.HeaderTemplate = new DynamicGridViewTextTemplate("Question", DataControlRowType.Header); tf.ItemTemplate = new DynamicGridViewTextTemplate("Question", DataControlRowType.DataRow); gvDynamicQuestion.Columns.Add(tf); tf = new TemplateField(); tf.HeaderText = "Criteria"; tf.HeaderTemplate = new DynamicGridViewTextTemplate("Criteria", DataControlRowType.Header); tf.ItemTemplate = new DynamicGridViewDDLTemplate(); gvDynamicQuestion.Columns.Add(tf); ////tf = new TemplateField(); ////tf.HeaderText = "Criteria"; ////tf.ItemTemplate = new DynamicGridViewDDLTemplate(); ////gvDynamicQuestion.Columns.Add(tf); gvDynamicQuestion.DataSource = ds.Tables[i]; gvDynamicQuestion.DataBind(); phDynamicGridHolder.Controls.Add(gvDynamicQuestion); } } } protected void DynamicGrid_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.Footer) { // } } } public class DynamicGridViewTextTemplate : ITemplate { string _ColName; DataControlRowType _rowType; int _Count; public DynamicGridViewTextTemplate(string ColName, DataControlRowType RowType) { _ColName = ColName; _rowType = RowType; } public DynamicGridViewTextTemplate(DataControlRowType RowType, int QuestionCount) { _rowType = RowType; _Count = QuestionCount; } public void InstantiateIn(System.Web.UI.Control container) { switch (_rowType) { case DataControlRowType.Header: Literal lc = new Literal(); lc.Text = "<b>" + _ColName + "</b>"; container.Controls.Add(lc); break; case DataControlRowType.DataRow: Label lbl = new Label(); lbl.DataBinding += new EventHandler(this.lbl_DataBind); container.Controls.Add(lbl); break; case DataControlRowType.Footer: Literal flc = new Literal(); flc.Text = "<b>Total No of Questions:" + _Count + "</b>"; container.Controls.Add(flc); break; default: break; } } private void lbl_DataBind(Object sender, EventArgs e) { Label lbl = (Label)sender; GridViewRow row = (GridViewRow)lbl.NamingContainer; lbl.Text =DataBinder.Eval(row.DataItem, _ColName).ToString(); } } public class DynamicGridViewDDLTemplate : ITemplate { // Implementation of ITemplate public void InstantiateIn(System.Web.UI.Control container) { // Create a DDL DropDownList ddl = new DropDownList(); //Attach method to delegate ddl.DataBinding += new System.EventHandler(this.ddl_DataBind); container.Controls.Add(ddl); } //Method that responds to the DataBinding event private void ddl_DataBind(object sender, System.EventArgs e) { //DropDownList ddl = (DropDownList)sender; //DataGridItem container = (DataGridItem)ddl.NamingContainer; //ddl.Data.Checked = [Data binding expression]; } }