Forms Data Controls :: CSS Friendly Adapter For Gridview Causes Nested Ajax Calendar Control's Table To Inherit CSS?
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?
For .NET 2.x/3.x there exists a CSS-Friendly Adapter on CodePlex that emits markup for an ASP.NET Menu Control as an ul.
The .NET 4.0 Menu control will also emit an ul, but the CSS class names are different from those emitted by the CSS-Friendly Adapter 1.0 on CodePlex.
In the interests of having a single version of CSS for .NET 2/3/4 sites, I want to create a version of the CSS-Friendly menu adapter that emits the same markup as the .NET 4.0 Menu control.
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'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
I have created a gridview (this is a usercontrol) with another gridview (also a usercontrol) inside it. Now I would like to bind a checkboxlist to the inner gridview. This is my markup for the inner gridview user control
I have a gridview that has 20 columns in it. 3 of them are date fields. I am using templatefields but not edittemplates, only itemtemplates because the users want to update multiple rows and then update the data all at once. I have a panel with an update panel and a calendar on it and in the grid I have a popup extendar added to the textbox in the cell to make the calendar show but I can't get the value from the popup calendar back to the cell. Does anybody have an example or is there a better way to do this?
i have a parent gridview,It has child gridview in every row.The edit and delete event of this child is working is fine.When i add data to through child gridview with empty data template.i can 't find the value of the parent contril id.
gvProductFeatures is the chid gridview... protected void gvProductFeatures_RowCommand(object sender, GridViewCommandEventArgs e) { try { if (e.CommandName.Equals("EmptyAddNewFeature")) { GridView gv = (GridView)sender; if (gv != null) { // here i need find the appropriate control id from parent..how?? int intIndex = Convert.ToInt32(e.CommandArgument); Label lblEmptyGroupPK = (Label)gv.Controls[0].Controls[0].FindControl("lblEmptyGroupPK"); TextBox txtEmptyFeatures = (TextBox)gv.Controls[0].Controls[0].FindControl("txtEmptyFeatures"); } } } catch(Expection ex) { } }
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.
Is it possible to use the ajax calendar extender with the listview control specifically within the edit tags . .Net is not throwing any errors but the extender is not working.
In a .Net 2.0 project, I have a Calendar control within a GridView that has a method set for its OnSelectionChanged event. However, the event never fires and I don't understand why. Here's what's in my aspx page:
I am using C# ASP .NET 2.0. On my web form I have a GridView and a Calendar control and I want to do the following:
With the Calendar control, I only want to show the current month, and links for the previous month and next month. Not the actual days of the month.
I want the days in the Calendar control to populate my left-most column of my GridView. For example, if March was the current month then I should see 31 rows in my GridView starting with 03/01/2010 in the first row and 03/31/2010 in the last row.
When you click the previous month or next month link I need the GridView to change for the selected month.
I have a 3 level deep nested gridview. The expansion/contraction of each record was originally done with javascript. There were html <div> tags around each gridview. Since these were HTML div tags I could give them IDs that were dynamically bound to record ID value within the database. I then had onclick buttons that passed in a bound record ID value that coresponded to the appropriate div tag that needed to be expanded (e.g. display: inline (show it) or if it is already inline then display: none).
This worked beautifuly. Unfortunatley I wanted to be able to do in-girdview editing of the child records. When expands a parent record and clicks to edit a child record the OnRowEdit event fires which automatically generates a postback and resets the variables within the JavaScript. THEREFORE THE ENTIRE GRIDVIEW STATE BECOMES CONTRACTED.
So finally I decided to change the div tags to <asp: Panel> and the onclick images to .net clickable images (all .net objects no framework). This works because the state is remembered within each postback. However, the problem I'm having is I can't dynamically bind ID's for panel since this is not allowed. HOW CAN I GIVE THE PANEL <% Bind("id") %>. THAT I CAN REFER TO SO I CAN OPEN THE APPROPRIATE PANEL.
I have a parent gridview control and a another gridvew control inside parent gridview.I want to access a column named type in parent gridview inside child gridview.And use the value of that column in a javascript function
I need to bind a List control based on the Gridview Row's datakeyName value while the Gridview control is being loaded into the page. I tried the following but it does not work.The BulletedList control is nested inside a Gridview Control and they both bound to an ObjectDataSource control. In my code, I passed teh UserID into the UserID parameter and call the Select() method but still does not work. Basically, I want to list of a user's hobbies, therefore the hobbies control are driven by the userID. tell me how can I get it to work?
protected void UserGridView_RowDataBound(object sender, GridViewRowEventArgs e) { int UserID;
I have simple SQL DB with invoice informations (i.e. invoice date, client info etc.). I'd like to use 'selecteddates' from the Calendar control to show the invoice information in a gridview with the invoice dates which are in the 'selecteddates' group.
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.
* Calendar control * Gridview control for games (uses SqlDataSource1, set to a stored procedure that requires 1 parameter: date) * Gridview control for videos (uses SqlDataSource2, set to a stored procedure that required 1 parameter: gameID)
This is my intended functionality:
* only control visible at start-up is the calendar control * user selects a date from the calendar control * the Game gridview becomes visible, showing games on the date the user selected in the Calendar control * the user selects a row in the Games gridview * the Video gridview becomes visible, showing available videos for the game
If I remove the Calendar control, the functionality between the Games gridview and the Videos gridview works as intended:
However, when I add the Calendar control, and change the datasource of the Games gridview to be dependent on the date selected in the Calendar control, the Video gridview no longer works
I have a strange issue. I have a XSD file where I have created some TableAdapters. When I have reopened the XSD file it seems like I am not able to create a new table adapter since all the options which will come when I right click on the XSD file are disabled. I have cross verified whether I am on debugging mode but...I was not..(I am not even able to drag and drop an adapter from the left toolbox menu either)I am getting the same issue when I open the same XSD file on somebody else machine but I am able to create TableAdaperts in other XSDs.Can somebody suggest me a solution for this
I have a profile of member to be displayed. I am using a dataset with all the data table adapter to retrieve the information from database.
I have a memContact method which has NRIC and Number as a composition primary key. Thus, automatically, the table adapter has created a method called FindByICNum () for me. However, when I do the search to display the contents, i will only need to search by memberic instead.
Is there anyway to change the table adapter query?
GridView gvchild = e.Row.FindControl("gvOrders") as GridView; drplist = gvchild.FindControl("drp1") as DropDownList; // den also same error object reference not set to an instance of an obj
I've been attempting to walk through the "Creating a Data Access Layer" tutorial found [URL]I create the DB connection, create the typed dataset and table adapter, specify the sql, etc.When I add the code to the presentation layer (in this case a page called AllProducts.aspx) I am unable to find the NorthwindTableAdapters.ProductsTableAdapter class. I tried to import the NorthwindTableAdapters namespace, but it is not showing up. Looking in the solution explorer Class View confirms that there is a Northwind class, but not the namespace I'm looking for.
I've tried several online tutorials that all have essentially the same steps, and I'm getting the same results.Can anyone give me a push in the right direction?I'm getting error: Namespace or type specified in the Imports 'NorthwindTableAdapters' doesn't contain any public member or cannot be found. Make sure the namespace or the type is defined and contains at least one public member.I think I might need to add a reference OR they may be creating a separate class and importing it into their main project. If that's the case, the tutorials do not mention this.
SuppliersTest2.aspx.vb: Imports NorthwindTableAdapters Partial Class SuppliersTest2 Inherits System.Web.UI.Page