Forms Data Controls :: Datagridview Control With Dynamically Added BoundField Columns?
Jun 2, 2010
I am having datagridview control with dynamically added BoundField columns.I want to have tetxboxes in each cell of the gridview so taht user will enter data in gridview textboxes and at last on button click it will be saved in database.
I have a situation where I need to freeze first two colums in a datagrid view control on my asp.net app. In windows forms there is a proprty called Freeze which can be enabled / disabled. How can I freeze first two colums in a data grid view control on my ASP.NET page.
I am new to asp.net and was trying to use datagridview in my webform. I was able to bind it to my database but I cannot make the datagridview's buttonfield respond. It seems the grid's SelectedIndexChanged event is not being fired or has issues with postback. Even a very simple statement is not being executed by the program e.g.
I am writing a survey generating system in asp.net. i asked an ealier question about the best way to create controls that can be passed about as variables. This was problematic with user controls so i was advised to use custom controls and a quick way to do this was to inherit from the panel control and just add a bunch of standard controls the the controls collection by overriding the CreateChildControls method. This way i could create my "survey" controls,which are basically Questions in the survey. THe question controls are then dynamically added to the page. This all works well but know i have come to the point that i want to try and retrieve the values from these controls and i seem to be lost in a nether world of of viewstates and page lifecycles. I can ensure that the dynamically added text boxes have a known ID, however even if i add the parent control in the page init handler the CreateChildControls method does not run until after until after the viewstate is loaded. I cannot work out how to retreive the values from these text boxes.
I have a composite user control consisting of three standard table cells (a legend, an image with a tool tip, and a text field control). If I add these to a TableRow in my aspx page it works fine and produces legal HTML in my source. The below works fine ...
However when I try to do the same programmatically (C#) the TableRow won't accept anything in its Controls collection that isn't a TableCell. I could make my control a nested table in its own right but I lose the alignment of my form items on the page with multiple controls, as each table aligns itself according to its contents. Is there anyway I can make the TableRow accept my control as collection of cells or do I need to do some casting or making my user control inherit some kind of TableCell attributes? I can also dynamically add my controls to a TableCell item which actually displays OK in IE but creates illegal HTML (<td><td></td><td> ... </td></td> - I assume this is illegal) in my resulting source. The code below DOES NOT work ...
I'm dynamically adding a DropDownList to the GridView in edit mode and I have set the TextBox Visibility to False. In edit mode I can see the DropDownList and I'm able to select an Item from the DropDownList but not able to access the SelectedValue in RowUpdating Event. How to get the selectedvalue of this DropDownList?
Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound If e.Row.RowType = DataControlRowType.DataRow And (e.Row.RowState And DataControlRowState.Edit) > 0 Then Dim ddl as DropDownList FillStateList(ddl) e.Row.Cells(4).Controls.Add(ddl)
ddl is the DropDownList that is added dynamically. And the default Textbox that is in the Edit mode is set to invisible. So there are actually two controls in the same cell in edit mode(TextBox is invisible).
I am adding linkbutton dynamically (actually above snippet tells what I am actually doing, in reality TableRow and TableCell are added dynamiccally). My problem is, I am not setting height of linkbuttuon which will added dynamically. I have no idea what text I have to add to linkbutton.
What I want, after all the link buttons are added, iterate through each added lin button, get the height of each linkbutton, store the max height, then re-iterate throgh the link buttons and set the height of each link button to max height.
I know that if I re-add the control during Page_Load, the posted values will be repopulated when the page is rendered; however, this is not the case when re-adding the control during the Click event and I need to add the control during an event handler.
While I am using a "Telerik" control here it shouldn't be any different I guess;
What happens is that the control is created and rendered;
When I change value in the Combo box a Post-Back happens.
HOWEVER, the event RadComboBoxSelectedIndexChanged does not fire. Also when I am back at the page the new value is not saved; Obviously, i recreate the control every time. If I don't I get a ViewState error. Seems to me that there some ViewState management problem, but I cannot identify it...
the problem is actually in the subject. I have custom control that uses treeview. The control is added dynamically. Nodes for this treeview are populated on demand. Treeview nodes can be checked. I recreate this control on page load event, but still CheckedNodes is empty if checked nodes were added dynamically (added on demand).
Dim objDatabase As New database objDatabase.OpenSQLConnection() Dim objAdapter As SqlDataAdapter Dim objDataset As New DataSet Dim objAdapter1 As SqlDataAdapter Dim objDataset1 As New DataSet Dim objAdapter2 As SqlDataAdapter Dim objDataset2 As New DataSet
i am using above code to generate dynamicaly textbox into grid view. I have 3 fix coloumns from database which i fetch at start of code.
Then i assigned it to datatable. in datatable according to Listbox item count i added more coloumn as per listbox items count.
then that datatable i i gave as datasourse to gridview. Now i inserted dynamicaly textbox to gridview in respective coloumn.
But after refreshing page all textboxes disappears....
I have gridview which auto generate column is false, and I add some template columns, databind with a class ClassA . it works fine. now, I need add some columns to this gridview. the problem is: I do not know the # of columns that will be added (it is dynamic), and the data with these columns is in ClassA, but it is a array (or list). so, there is no public property for these data, only the array.
now, what I did is: I dynamically add template column to the gridview (column header ...), so, it shows the correct columns in the gridview, but how can I bind the data? I found some example, i.e.
but it is for aleady know the data field (which is a public property in the class). all I have is just a array, and I need bind them to the newly created columns in sequence.