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]
<asp:GridView ID="grdEmployee" runat="server" AutoGenerateColumns="False"
CssClass="grdE" DataKeyNames="employee_ID"
ShowFooter="True">
<Columns>
<asp:BoundField DataField="employee_ID" HeaderText="ID" ReadOnly="True" />
<asp:TemplateField HeaderText="Employee Name">
<ItemTemplate>
<asp:Label ID="lblEmployeeName" runat="server" Text='<%#Eval("employee_name")%>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtEmployeeName" runat="server" Text='<%#Eval("employee_name")%>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="City">
<EditItemTemplate>
<asp:DropDownList ID="cboCity" runat="server"
DataSourceID="SqlDataSource1" DataTextField="city" DataValueField="cityval"
SelectedValue='<%# Bind("employee_city") %>'>
</asp:DropDownList>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="Data Source=XXXXXXXXXXXX;Initial Catalog=xxxxxxx;Integrated Security=True"
ProviderName="System.Data.SqlClient"
SelectCommand="QUERY_CITY" SelectCommandType="StoredProcedure"></asp:SqlDataSource>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblEmployeeCity" runat="server" Text='<%# Bind("employee_city") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
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.
View 2 Replies
Similar Messages:
Feb 2, 2010
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?
View 4 Replies
Mar 1, 2011
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
[Code]....
[Code]....
And the C# behind:
[Code]....
View 10 Replies
Jun 17, 2010
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.
View 3 Replies
Dec 5, 2013
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.
View 1 Replies
Jun 23, 2010
So im building a table from codebehind that plops data into each cell like so -
[Code]....
This just doesnt work, i was wondering if there was something else i could try to get this working....
View 1 Replies
Feb 15, 2011
how to bind data from database table to a dropdownlist nested in a gridview
View 1 Replies
Apr 27, 2016
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 ...
View 1 Replies
Jan 24, 2016
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.
View 1 Replies
Dec 1, 2010
In nested gridview, i am finding some problem, i want to show child Grid headers in Parent Gridview. Can anyone tell me that how it is possible? Its very urgent. Waiting for quick response.
View 1 Replies
Jul 12, 2010
I have multiple questions about doing gridview in code behind.I used this code to fill my gridview at runtime.
[Code]....
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?
View 15 Replies
Oct 12, 2010
i have the following nested gridview
i could get the inner gridview onRowDataBound working by setting that directly in the gridview
but i cannot get the linkbutton's onrowCommad inside the inner gridview working!!!
it does not fire the event even i have set it directly in the gridview
here is the code in my app_code page
[code]....
View 12 Replies
Oct 28, 2010
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:
[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?
View 3 Replies
Jan 3, 2010
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.
OnRowEditing="grdChildGridEdit_RowEditing"
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:
[code]....
View 5 Replies
Apr 13, 2010
Using vb.net/asp.net 2005
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:
<ERROR>
Type 'System.Web.UI.WebControls.TemplateField' does not have a public property named 'tr'.
</ERROR>
View 3 Replies
Jun 15, 2010
I have a nested gridview containing gridviews: gvMaster(Parent) and gvAlternate(Child)
If I select a row in gvAlternate is there a way for me to find out what gvMaster row it is under? I want to highlight the selected gvAlternate row and the gvMaster row that it is under.
[code]....
I can get a certain set of rows of gvAlternate only by referencing which gvAlternate control set I want to access: this is based on the gvMaster.Rows and then using the FindControl and id name:
GridView
gv = (GridView)this.gvMaster.Rows[aRowNumber].FindControl("gvAlternate");
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?
View 2 Replies
Jan 28, 2011
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.
[Code]....
[Code]....
View 4 Replies
Nov 24, 2010
Is there a way to turn this
[Code]....
[Code]....
View 6 Replies
Apr 26, 2010
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.
View 10 Replies
Jul 23, 2010
I have a method I want to use on two gridviews which contain different information, ideally i want to do an if statement, something like
if (GridView.ID = "GridView_ABC") {
// do this
}
else if (GridView.ID = "GridView_2") {
// do this
}
View 6 Replies
Jul 21, 2010
is it possible to have a button that points to a method you have defined in codebehind, that passes in a record from the row as a parameter? for example, id.something like:
<asp:CommandField ButtonType="Image" EditImageUrl="/editbutton.jpg" ShowEditButton="True" OnClick="editRow(int id)"/>
it wouldnt necessarily 'edit' this row. i'd like it to instead load an editable grid corresponding to the id passed.
View 3 Replies
Dec 15, 2010
a Gridview contain itemtemplate(using code behind) and
Textbox with random id
how to access the the textbox id in code behind
View 1 Replies
Feb 3, 2011
[Code]....
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??
View 5 Replies
Feb 5, 2010
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
[Code]....
Where gv.SelectedValue would return the information I needed.
View 5 Replies
Mar 24, 2010
I am using C# with Access/SQL databases. I have this piece of code for a nested gridview using access database working fine:
private AccessDataSource ChildDataSource(string strProjectCode, string strSort)
View 8 Replies