Forms Data Controls :: Should Use Datagrid, Gridview Or Datalist?
Dec 23, 2010
I am going to have a page that list an (image, description, category) this needs to be an editable list (the user should be able to edit description or select a cateogry from a dropdown or delete the whole image). lets say I need to display 20 rows per page.here are my questions:1) should I use datagrid, gridview or datalist?2) would PagingBulletedList works well with any of the above control3) when I go to the database to get the rows , since i am going to have 20 items per page should I just bind the control with all the rows or should I just display the first 20 items and when the user click page 2 i go to the database to bring the second set of 20 items?
I am trying to follow this tutorial(out of date) but the simplest I can find and understand to put a repeater or datagrid inside of a datalist.http://www.tutorialized.com/view/tutorial/DataGrid-inside-a-DataGrid/13926I get hung up in the cs part. Can I just add a sql datasource to the aspx page then call it from the cs like this somehow...my
I have Datalist control in my application which contains one Gridview control as a child control in it. Now at the time of giving datasource to the child control, it gives object reference error.Note:I am binding the child grid at the time of ItemDataBound Event of Datalist controlMy code looks like :
Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
The above error occurs with gridview control , when used with template field columns with item template / and edit templates etc. updating a row within gridview, at the time of loadiong it loads perfectly fined, but when tried to modify an existing row within gridview control, then it produces the error. Make sure the grid view control has to be a child control which manages the child table info with in a master form. to reproduce the above problem the grid view must be loading the child records info of a master within the masterform, meaning both master data and gridview data all to be managed in one single form.
I had to replace gridview control with datagrid and then it worked perfectly fine. I wasted almost 4 days of my time., there is no way we could figure out the problem. here is the full info of the problem.
Server Error in '/' Application.
Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.Web.HttpException: Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.
Source Error:
[Code]....
Stack Trace:
[HttpException (0x80004005): Failed to load viewstate. The control tree into which viewstate is being loaded must match the control tree that was used to save viewstate during the previous request. For example, when adding controls dynamically, the controls added during a post-back must match the type and position of the controls added during the initial request.] System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +306 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Control.LoadChildViewStateByIndex(ArrayList childState) +134 System.Web.UI.Control.LoadViewStateRecursive(Object savedState) +221 System.Web.UI.Page.LoadAllState() +312 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1661
Version Information: Microsoft .NET Framework Version:2.0.50727.3603; ASP.NET Version:2.0.50727.3082
I have a interesting problem and being relatively new to .NET I thought to try the forum for some guidance. I need to present information from a database, typical, but I need to create stand alone views of the data based on the "category" for the reported information. I don't know how many or how few categories I might need to generate but each needs to be displayed in its own datagrid or gridview. I did a prototype report where I could dynamically generate a variable number of columns in a generic datagrid already placed on the page based on the database but the user "changed their minds", also typical, and want a different view (actually views). Does anyone have any thoughts on creating anywhere from 1 to a dozen (or more) datagrids in the code behind and then pushing them out to the aspx page for the user? Can you dynamically generate datagrids and gridviews on the fly? Or would you need to?
I know how to handle the filtering of the grid (create a criteria and set to rowfilter of the dataview) But, I dont know how to get the value of the column of the selected row.
I have a set of data that has been displayed as just a simple GridView with the item name being a hyperlink to view details. I'm attempting to update this scenario so certain fields (sortOrder and isApproved) are editable from the main page and do not require visiting each item in the grid. I have converted the GridView to a DataGrid and have included a TemplateColumn for the columns in question. I have them hooked up to display the values appropriately. At this point, I'm trying to find a way to peek into the DataGrid and it's related data source to determine if the values have changed on the click event of a button. At that point, I could persist those changes back to the respective SharePoint list.
I'm not very familiar with the DataGrid, or GridView for that matter. Can anyone point me in the correct direction on how I could gain access to the data source at an item/row level during a button click event where the button exists outside the context of the DataGrid?
I want to PIN the header part of my DataGrid or GridView? How is it possible? Ex: Suppose we have 100 rows in data grid, and 1 row with header. If you scroll data grid, header row shouldn't scroll. It should be fixed or PINNED. Only rows with data should scroll. Is there any in built function in data grid to achieve this functionality or any other methods to do this?
I have Datagrid , i want to clcik on row and get data in textbox , but my textbox is FreeTextBox control,i tried to use javascript but work for asp.net control not working for freetext box control, how i can capture this code is sample code but it work for asp.net control but not working for my freetextbox
Simply put... I want to duplicate the example found at this link, in VB.net rather than C#.
[URL]
I would like the selectedvalue of the dropdown to display additional data base on its selection in multiple text boxes.
I have tried using the DropDownList OnSelectedIndexChanged property, within a DataGrid EditiItemTemplate, but I cannot retrieve data from the selection. (AutoPostBack is "True"). I can however use a button onclick event to fire a "prre-defined" selection value.
If I write the following code, teh gridview will no longer show the data
gridview.DataSource = null; gridview.Databound.
My question is , I want to make the same thing with a user control that contain a gridview. when I use the user control in an aspx page, I am able to populate it with data, but when I try to make this code, the Datasource does not show, instead, I see .DV. So I tried this code but then , I do not see DataSource property instead I see DV (DataView), when I put .DV = null, I get an error message that the object is not in existed. any idea how to clear the user control gridview from its data.
I have a DataTable of datetime objects - starttime and endtimes for 1 to infinite (almost) weeks. I've created a webcontrol of my own because I can't get either a DataGrid, GridView or a Repeater to break line after each week in my DataTable.
But it most be possibly to make it happend.
My data is sorted by asc using my Startdate.
Is there an eventhandler on either of the mentioned controls where I can do my check for every 7th day and then make my control break into a new line for the next week and so on?
I'm trying to change one section in code from DataGrid format to GridView format. The reasoning is that the sample application that was displayed was using a DataGrid even though it should have been using a Gridview for 2.0 and above. Most of it shows up without an error except one line in 3 lines which are pretty much the same. I bolded them and just want to know how do I re-write them for the Gridview?
Protected Sub NewsGrid_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles NewsGrid.RowCommand Dim connection As SqlConnection = CreateConnection() If e.CommandName = "Delete" Then Dim com As New SqlCommand("DELETE FROM ElectPageEditor WHERE NewsID = @NewsID", connection) com.Parameters.AddWithValue("@NewsID", e.Item.Cells(0).Text) Try connection.Open() com.ExecuteNonQuery() Catch generatedExceptionName As SqlException Finally connection.Close() End Try ElseIf e.CommandName = "Edit" Then Dim command As New SqlCommand("SELECT NewsText FROM ElectPageEditor WHERE NewsID = @NewsID", connection) command.Parameters.AddWithValue("@NewsID", e.Row.Cells(0).Text) Try connection.Open() Dim record As SqlDataReader = command.ExecuteReader(CommandBehavior.CloseConnection) If record.Read() Then NewsEditor.Content = record.GetString(0) EditedNews.Value = e.Item.Cells(0).Text lse NewsEditor.Content = "" EditedNews.Value = "" End If ' Will close the connection as well record.Close() Catch generatedExceptionName As SqlException Finally connection.Close() End Try End If ' Add code to delete row from data source. ReadAllRecords() End Sub
I have 2 datagrid (using .net 1.1). I need to access column of second grid ( i need to make a column of second grid as disabled) when i click "Cancel" link button in First Grid. How can this be done?
Im populating gride using sql datasource. I have assigned email to lable using "eval".
I have another datalist control on same page which im populating using another sql datasourse. Now fro this the condition will be where email = email which I have assigned to label in above gride.
I am extremely new to ASP and just started learning. I want to know which is better between Datalist, Gridview or Listview if I need paging and sorting functionality? This is what I have so far.
I've tried Datalist but I am having trouble with the paging portion. I've tried gridview and listview and got the paging to work but for some reason, when I click on Pg 2, it refreshes the search or something and what was shown on Pg 1 would appear again on Pg 2.
I want to show just the first row or the datalist although datareader returns x number of rows. I need to use it for printing so is it possible to get x number of wors from the datareader and display just the first row hiding all other (it will make printingeasier)
Context: In an ASP.NET application, I need the behavior of the ItemTemplate / EditItemTemplate that the DataList control provides. However, I only need one item in my control, which makes the DataList seems like overkill.
Question: Is there a control in ASP.NET made to store a single item that has the template content behavior of the DataList and DataGrid? Should I use a DataList for only one item?
I have downloaded the code 39 font to display barcode in my GridView or DataList. It shows the barcode with the numeric value under it. I only want to show the barcode. how to omit numeric value from barcode?
I have a webform that functions as a kind of a timesheet. The way it works now is that a user selects a project from a dropdownlist, the enters a date and the amount of hours worked. After that the user selects the link button "register" and the worked hours are registered and the result will be shown in a datalist (for each project a new one). Is there some possible way to show a user in advance all the projects he is authorized for in a datalist or so, so he can fill out the hours for all the projects at once? Now the selection for a project from the dropdownlist is a problem for some users cause they have a lot if projects and it is quit a workload on the manor now.