Forms Data Controls :: Nested DDL From Second Table In GridView - SQL To Codebehind
Mar 8, 2011
First, what I am showing here works fine, and I know how to do this if the nested control comes from the same bound table. I could leave it at that, but I don't like SQL code in my aspx page, and want to move it. I'm keeping it simple here, but I can move it to a data access layer later on..... for now, I want to understand what's going on when the page loads and the nested control is rendered and populated. WHAT I LEARN FROM THIS WILL BENEFIT ME ACROSS THE BOARD - NOT just for this instance!!!
My question is, how to grab the SQL query from the aspx page for the NESTED control and move it to the codebehind. I'd LOVE to also move the Selected Value parameter if possible, but mainly want to get the SQL out of the page. I KNOW HOW TO DO THIS for a GridView or any control, but I DO NOT know how to do it for a NESTED CONTROL from a different table - i.e. WHERE it fires (on GridViewEditing or GridViewUpdating or PageLoad....) so I can put in the SQL where it belongs.... and I'm PRETTY darn SURE this can be done without a 'foreach' loop. For discussion's sake here, imagine
1. DATABASE: simple table with employee_ID, employee_name, employee_city as fields
2. DATABASE: simple table containing all cities (city, cityval)
2. simple GridView that displays these 3 fields in same order ON VIEW
3. Template field for city. On PAGE LOAD, this is a simple label bound to the 'city' field. HOWEVER - On EDIT (with edit button), the field changes to a nested DropDownList that is bound to the 'city' table, NOT to the employee table.
4. Selected value is the current city for employee The PROC you see here in the edit item SQL is actually SELECT * FROM [cities] ORDER BY [city_name]
ALL I want to do is move the SQL Query in the EDIT template above to the code behind. I just don't know WHERE or WHEN in the code this fires and how to handle it when the table is different from the original GridView table. AND the cboCity.SelectedValue, if possible.
I was having issues with a gridview and CSS so I posted my question here and received a wonderful answer which lead me to implementing CSS Friendly Adapters for all of my gridviews.I have a table nested in the EditItemTemplate that holds the textbox and the button for a calendar control where I want them, it inherits the CSS applied from the CSS Friendly Adapters. I don't want it to change the CSS so I have changed the CSS inline, with no success. More importantly...
I also have a Ajax calendarExtender control to change the date for that field. When the popup is displayed the table in which the calendar is shown in also inherits the CSS Friendly Adapters code. I have tried fixing this by creating a external css sheet for the calendarExtender's cssClass property and a blending of CSS occurs where the items not specified by the Friendly Adapter Code are set correctly by the calendar.css file that I created.Is there anything that I can do to force the tables inside of the gridview to ignore the inherited Friendly Adapter Code?
I'm trying to create a nested gridview, but I'm stuck at the editing/deleting part of the nested gridview. (Below is my code).The nested gridviews are filling out nice, I've set the DeleteParameter in the SQLDataSource, but I'm still getting this error when trying to delete a criteria: 'The Gridview 'gvCriteria' fired event RowDeleting which wasn't handled.'I've tried to create a method 'gvCriteria_RowDeleting', but that didn't seem to work out.Someone who can give me a piece of advice? Would it be possible to fill the gridview without using gvDomain_rowDataBound? Dries
Is there a better, cleaner way to do this in ASP.NET 2.0?
An ASP.NET 2.0 page displays a datalist of records. Each record can have many dates, so the dates are in a nested gridview (I chose a gridview over a datalist here because we want to be able to delete a date and this is easier done in a gridview). The parent record can never be deleted.
The display works fine: the nested gridview gets its datasource during the parent datalist's OnItemDataBound event.
The problem: the nested gridview's delete function. The date gets deleted without a problem (handled in the OnRowDeleting event), but somehow the redisplay is untying all the other nested gridviews from their datasources. The delete does not appear to cause a page postback, so I don't know how the other nested gridviews are losing their datasources.
In Nested Grid, we get a '+' sign. The problem is that '+' sign appears all times, even if there are no child records for that row. 1. Can we enable/disable OR Hide/Unhide '+' sign. depending on if child rows exits.2. OR alteast we can put some bgcolor indicating to user that this record do have child rows. Without any indicator user may feel quite annoying to click on '+' sign and nothing happens.
I am new MVC 4 and I am trying bind routine of class . For example if i bind class after that automatically get the all routine of same class . If we talk in asp.net c# language i want to bind a repeater2 on item bound command of repeater 1. How to get this in mvc ...
I have designed a collapsible nested gridview project using this article as a reference Collapsible Nested GridView with Paging using ASP.Net. I am trying to modify the code to collapse a gridview when another gridview is expanded so that only one nested gridview will be open at a time.
I have multiple questions about doing gridview in code behind.I used this code to fill my gridview at runtime.
My questions are:1. How to edit the column headers? When I bind the database to my gridview, obviously, the column headers of the database will be binded. For example "First_Name", I want to edit the column so I can omit the underscore.2. How to edit the column width?
I have a nested gridview which has been working fine. Now I need to turn the inner gridview off based on some condition: a IF block is added to the existing RowDataBound event of the outer gridview. Now I'm getting "the Object reference not set to an instance of an object" error. What should be the proper way to go about this? The code:
In addition, is there a way to "switch" columns of the inner gridview? For example, column 1 is "City", column 2 is "Price". If user selects to sort by "Price", I woud like column 1 be "Price" and column 2 be "City". Is this has to be done programmatically or if there's other way?
I have a nested gridview dynamically added. It seems I resolved all issues with the loading this control on a parent page along with other controls and I can trigger the edit of the first level - the master part of the gridview. However, I cannot trigger the edit on a child gridview.
The master and the child gridviews have objectdatasources in a markup but I have to do the additional data binding after the loading the control on the parent page (see the code below). I'm doing that additional data binding only for the master gridview that is working fine and shows the data for the master and the child gridviews. When I click the Edit button on the master gridview it shows text boxes for the editing but when I click the Edit button on the child gridview it's doing nothing and moreover the editing mode for the master gridview is going back to the initial stage (labels).
I was trying to trigger it throughuse the registering the event:
I have a nested gridview (gridview within gridview) that I need to render beneath the outer gridview.
I keep finding examples online of showing a nested gridview in the last column of the outer gridview but I need to show my nested gridview instead under the outer gridview.
I was certain that I had done this before by putting a row (<TR>) inside the TemplateField so that the nested gridview would display under the outer gridview. I am getting the data ok for the nested gridview, that is not a problem. The only issue I am having is making the inner gridview display under the outer gridview.
btw, the error is below:
Type 'System.Web.UI.WebControls.TemplateField' does not have a public property named 'tr'.
Therefore, it is true that a set of rows in a nested gridview is tied to a specific row in its master gridview, the question is does the child gridview know which set it's connected to or does it's master know if a childset has been selected?
I have a parent gridview5 with child gridview 6, today i deployed it to our dev server and on that server we have alot more records, so for the nested gridviews i need to enable paging on the parent gridview5. Doing so works fine, until i make a selection within the child gridview6, once any selection is made, and i try to page the page throws an error, i have the following bound to the parent gridview5.
I've been trying to accomplish this for days without joy. I need to update a specific cell in a gridview with some static text when a button click that is outside the gridview. The cell i need to update is a template field.
This is my gridview with an item template, I have NO boundColumns.TO get data to codebehind I use Eval(" <Field name >"), but this returns something to a control. Not making data available for codebehind code for general use.
Question: As I have no boundcolumns I dont know how to get data to codebehind to to use as I wish??
I have a gridview (gvNested) nested inside another gridview (gvParent). I want to get the selected value of the nested gridview, but keep getting the classic 'object reference not set to an instance' error. I thought that this would work
Where gv.SelectedValue would return the information I needed.