Forms Data Controls :: How To Freeze Two Columns In Datagridview
Aug 26, 2010
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 created a gridview that is made up of 4 gridviews and using a stored procedure to populate it. I create columns at runtime because the number of columns changes all the time.To make the grids editable I am adding template fields at runtime as I create the columns, this is to ensure that a user is able to edit the cells and some foot values update. Reason why I have four grids is to freeze rows and columns like in excel using javascript. The problem is that performance is very bad especially in IE, the grids take a long time to load. I am not sure if this is caused by the data load or the creation of text boxes. see some of the code below for my _aspx page:
My question is how to freeze specifi columns of Gridview control ? Freeze means...for example say if we are freezing the first column of grid then on scrolling a horizontal scroll bar of the grid will scroll all columns other than the first column. That means the first column will be visible always without any movement. But the first column should move if we use the vertical scroll bar.
I have to freeze the first column in a data grid. i have done freezing part but the issue is vertical and horizontal scroll bar movement getting slow. in my data grid each row contains 18 textboxes and 18 image buttons.if number of rows count around 15 then the scroll bars working almost properly.issue in morethan 15 rows
For freeze i am using CSS.Platform is asp.net1.1
in CSS i am using below given codes. div#div-datagrid { width: 200px; height: 200px; overflow: auto; } /* Locks the left column */ td.locked, th.locked { position:relative; cursor: default; left: expression(document.getElementById("div-datagrid").scrollLeft-1); } /* Locks table header */ th { font-size: 14px; font-weight: bold; text-align: center; background-color:Navy; color: white; border-right: 1px solid silver; position:relative; cursor: default; top: expression(document.getElementById("div-datagrid").scrollTop-4); z-index: 10; } /* Keeps the header as the top most item. Important for top left item*/ th.locked {z-index: 99;}
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 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 have a gridview where I display (from left to right) plant id, product no and month/year and there after a column with qty for every day on the month.
The gridview is located inside a panel that has a horizontal scrollable property set that lets user scroll from left to the right. This works fine.
Now, they are asking if it is possible somehow to freeze plant id and product no? Currently when they scroll past day 10 then plant id and product no is not longer visible and making it hard to see what line you are on.
I need to freeze my gridview header and the first two columns. I found a great jquery plugin called tinytbl which does the job but it messes up the inline javascript on my page which causes a few issues.
Any better way to freeze columns? I see alot of examples on the net using css but they use expression which has been deprecated.
I am trying to export my Model to an Excel sheet. I have 31 fields out of which only 29 are exported. Among the 3 fields that I am not able to export 2 are of type Enum and one of DateTime. Their is another DateTime field also, but that is exported properly. Here are few fields of the model :
[EnumDataType(typeof(Suffix)), Display(Name = "Suffix *")] [Required(ErrorMessage = "Suffix is Required")] public Suffix NameSuffix { get; set; } [EnumDataType(typeof(InquiryStatus)), Display(Name = "Status")] [Required(ErrorMessage = "Status is Required")]
[Code] ....
Among the 4 fields above, NameSuffix, Inquiry_Status & FollowUpDate are not exported. InquiryDate is exported.
I'm trying to freeze columns in gridview where grid has static height and all rows are rendered(no paging and scroll var is visible).I only managed to add scroll through content by overflow property,but this time all columns are scrolling as well.My task is to freeze columns while maintaining column width.Let this be my grid
<div style="height:200px;overflow:auto;"> <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" UseAccessibleHeader="true or false">
I have searched numerous articles for how to accomplish freezing the Header Row of a DataGrid or GridView component being to simply hide the header and then build table cells just above the component to define the columns. But the one that I'd like to get to work is by the use of CSS code. Problem is that this code seems to work for everyone else but it isn't working for me. Here's my Stylesheet code:
[Code]....
When I run my page I get all the styles applied but the header scrolls with all the other rows in the grid.
why this code is probably not working? I am using .NET Framework 3.5 and developing in VSS 2008 which may be why this doesn't work?
I have successfully downloaded sample code from Code Project which works using other techniques as well, but the code was written in .NET 1.1 Framework and VB.NET.
in asp.net page user able to select gridview Columns, and it will hide remaining columns and that selection done by check box with column list bellow is Image link , what exactly I am looking for [URL] it look bellow after selection of column done [URL]
Trying to update a .NET .20 datagridview in the following scenario. A page contains a formview. The formview contains a datagridview and some other fields not in the grid. The formview has its own ObjectDataSource and the datagridview has a separate ObjectDataSource. Each ObjectDataSource has an OnUpdating event. Clicking a Save button triggers the formview update event and the "non-grid" ObjectDataSource updates without a problem. In that same event, I also want to update the grid's ObjectDataSource. Because it's a grid, this OnUpdating event has to loop through each row, get the data for that row and set the UpdateParameter values. A foreach loop can get the values, but how do I trigger the update before looping to the next row?
Should I try calling a different kind of event for the DataGridView's ObjectDataSource? Or is there a way to get all the grid's new data at once as a dataset or datatable and do one bulk update? The datagridview does not have row-level edit/update buttons. It is meant to be an all-or-nothing kind of update.