Forms Data Controls :: Datagrid Column Sorting With Two Columns ( File Name, And Date Created )?
Jan 3, 2011
I have a datagrid with two columns ( File Name, and Date Created ). I want them to be sorted when clicked (ASC or DESC). I went into the design view and added the allow sorting feature and added the column names, so they are clickable in the header of the data grid. I also already added the onsortcommand as well.
My datagrid is named dgFileList and the onsortcommand method is named dgFileList_SortCommand.
The procedure that is already loading on page load is a DataSet. (where I think my problem is)I dont have anything in the back end beside the dgFileList_Sortcommand method. From what I have read, it seems like I can't use a DataSet to be sorted...I'm using visual studios 2005, C#, not VB.
In gridview columns im displaying date and time, as below.
23/02/2010 11:19:52
Im also doing sorting on these columns.
But the issue is during sorting its only sorting on "day (dd)"....
for example....these 3 values are from column, Date.
23/02/2010 11:19:52
18/02/2010 10:25:10
17/03/2010 09:30:51
when I click for "Ascending" sort....it should get "17/03/2010 09:30:51" on the top (because of month 03) others have 02, but it doesnt, it gets in the above order, its just sort on day (dd).Below is my code for boundfield....
I have "Order" object with Columns Ticket,OTP and CustomerName etc.Intially on DataGrid, I'm binding Ticket only , when user clicks on "Column Chooser" button, another windows appears to pickup CustomerName,OTP columns to add specified column dynamically on Datagrid. Environment : Asp.net ,C# with Object Data source
Public Class Order { publc void Order() { } public string Ticket { get { return this.strTicket; } set { this.strTicket = value; } } public string OtpNumber { get { return this.strOtpNumber; } set { this.strOtpNumber = value; } } public string CustomerName { get { return this.strCustomer; } set { this.strCustomer = value; } } } }
is it possible to disable sorting on specific columns? 5 out of 7 columns have to be sortable, two not sortable. The columns are created dynamically in code behind, so I think doing this with mark up is out of the question. When I say disabled, I'm hoping that the underline wont show on the column header when you mouse over it.
I have 5 bound columns to be retrieved from the database but I want that on page load event the retrieval of data should be sorted according to that column only
I need to access the controls dynamically created template fields at run time in datagrid in post back event. Is there any way to retrieve the values in post back event? Or else give the ideas to acheive my requirement. I need to create no of rows and columns as text box as per user input. After fill the values to text box , i need to access the values in submit button.
Situation: SQL database, Linq to SQL class a ASP.NET page with a LinqDataSource and a gridview. The table has a ID field, a date field and a Serialnr field. In my Grid I like to Page on the datefield but to sort on the serialnr field ( or a selectable other field). Is that possible? Standard the paging is always done on the sort field and when you select a different sort field the page jumps back to the first page., and paging is then done over that sorted column.
what I am trying to do;I want it so that when the user clicks on the datagrid column headers to sort the records, or when they go to page the datagrid, that a confirmation pop-up appears first, confirming that their changes are going to be lost (unless they click "Cancel").I have the confirmation pop-up scripted in Javascript and is added to the controls on the page using
[Code]....
How do I attach this to a datagrid header and to the pager?Do the columns need to be Template columns and the header text being hyperlink? If so, how do I set it up so it will, if the user clicks "OK" in the confirmation pop-up, still sort?
I have my data grid and sort on a column but the row formatting stops working. I simply selected a format using the autoformat option and picked classic. Am I meant to reapply the row formatting after the sort? And if so how?
I have tried several different approaches .SOMEONE PLEASE sow me how to sort on template field with a calculated value.Basically i have half the data i need in the DB and the other half comes from textbox1.textI take the text in textbox1 and pass it along with a value from the DB (Orig) to a function that returns miles.
[Code]....
Whit the above method everything displays correctly but i cannot sort on that column .I also tried using the miles() function in my select statement for my datasource but that was a nightmare and couldn't get that to work i either got "undeclared function "miles()" or when i fixed that i got "orig" not declared.Sorry code is so jumbled , entire code is below:
I am looking to sort a column on my gridview by simply clicking on the column rather than clicking on the column header. In the design I have been given, the column header will not be shown, and I need to be able to give the user to sort this column, by simply just clicking any where on the column.
I cannot sort after adding GridView_AA_RowCreated function. Each column of Grid view header-text worked well before I add this Row Created function. If I cut the following code: e.Row.Cells[2].Text = "Period Name"; Sorting works. I want to get sorting without removing this Row Created function. Do you have any brighter solution about my problem?
protected void GridView_AA_RowCreated(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.Header) { e.Row.Cells[2].Text = "Period Name"; //Change header text in run-time } }
I'm looking for the best way (Performance) to do gridview columns formating RunTime /Dynamic depending on the datatable Columns type ,I want to bind the datatable to a gridview and format the Date columns to short date, and currency columns formatted with comma ex 10,000.00 inplace 100000.00 at datatable the column type is double run time (without converting them to String) since I do a filtering and sorting at these columns.
whenever I sort on a column it resets all my toggled columns back to visible. Is there a way to resort and keep the toggled columns that were selected as hidden to stay hidden?
I've got a datagrid which i wanted to sort, since i dnt have much knowledge of .Net, so what i did was to save that datagrid in a DataTable, then again save the same DataTable in a DataView, then apply sorting on that DataView. this is the code, and its working fine.
but the issue comes when the i try to sort the Date Column, the dates are in MM/DD/YYYY format, so if i try to sort the date column, the dates are sorted on month basis, rather than year basis. now i cant change the date format, is there any way to sort dates in DataView?
I have a gridview to which I am binding a database values. My requirement is to bind the values to the gridview by sorting 3 columns as a default sorting with ASC order in one column and descending order in other two.. Can I do it in my .Net code or should I do that in Stored Procedure? If it can be done in .net code Can you tel me how it can be done.
I am upgrading a classic asp page, the page uses response.write to make a table, as soon as a null value comes up for a month the columns of the grid then stop. The sql is below
SELECT sName, Strategy, Sum(case when Month([Date])=1 then Rtn else null end) as Jan, Sum(case when Month([Date])=2 then Rtn else null end) as Feb, Sum(case when Month([Date])=3 then Rtn else null end) as Mar, Sum(case when Month([Date])=4 then Rtn else null end) as Apr, Sum(case when Month([Date])=5 then Rtn else null end) as May, Sum(case when Month([Date])=6 then Rtn else null end) as Jun, Sum(case when Month([Date])=7 then Rtn else null end) as Jul, Sum(case when Month([Date])=8 then Rtn else null end) as Aug, Sum(case when Month([Date])=9 then Rtn else null end) as Sep, Sum(case when Month([Date])=10 then Rtn else null end) as Oct, Sum(case when Month([Date])=11 then Rtn else null end) as Nov, Sum(case when Month([Date])=12 then Rtn else null end) as Dec FROM Chess
If this is run in oct i only have data from jan -0ct , how do i not display nov and dec so that its dynamic?
i need to extend this so that i can inlcude another column from a different table. so let's say i have a colume in table Price and the column i want to display in datagrid header is cost, how can i do this? there is code backend but could i simply code the below to include this column?
The .aspx.vb file associated with it fills it in with a datagrid object.
Protected WithEvents Gifts As System.Web.UI.WebControls.DataGrid Public GiftData As DataTable Gifts.DataSource = New DataView(GiftData) Gifts.DataBind()
That all works fine. However I want to format one of the columns with a particular date format. Is there a way of doing that in the vb code? I know I can do it in the .aspx by specifing AutoGenerateColumns="False" and then explicitly defining the columns, but I want to do it in the code as it's more future proof for my application.
Im basically listing a set of facilities in a datagrid. Like so:b Projectorcb Laptopcb TelevisonIn roomview, a check appears where a facility is availble in a room. This part works fine.The user can then edit the facilities, by clicking on the check beside each facility. When the update button is pushed I need to record the value of the checkbox, however I cant get the value of the checkbox.eres my codebehind: