Databinding - ObjectDataSource Binding With ASP.NET Gridview Auto Adding Parameters?
Feb 16, 2010
I have a gridview databound to an objectdatasource. Everything worked great until I changed 2 columns from asp:BoundField to asp:TemplateField. These are the UPC column and the Part column. I wanted to show a link button for each of these fields that take the user to another page. Now asp.net expects these two fields to be parameters on the update store procedure. Why is this? How do I get it to not assume these columns need to be passed to the store procedure?
I'm trying to bind both GridView and DetailsView to a single ObjectDataSource declaratively (in markup). I'm getting the error read as below when I tried to run it.
"The DataSourceID of 'DetailsView1' must be the ID of a control of type IDataSource. A control with ID 'ReservationsDataSource' could not be found."
It works when I bind GridView and DetailsView each seperately to my ObjectDataSource. Is it I can't bind two pagable data web controls to a single datasource?? or there is a trick needed to be done for this to work.
FYI, I'm trying to create a Master/DetailsView of my data. DetailsView of my application should show the record selected in GridView and it should be editable.
I am using an ObjectDataSource control to call a MapInfo object. This object has two properties:
public IList Visits public int TotalAvailable
The select method returns an IList but the TotalAvailable property is also populated. I have set the TypeName in the ObjectDataSource to the MapInfo object but because the Select method only returns the IList I don't have access to the TotalAvailable.
[code]....
Is there any way to access this value. I know it is being populated in the MapInfo object but all that gets returned from the Select method is the IList
Since ASP.NET MVC3 RC2 I encounter a bug when posting values to a controller method of which one of the parameter is a nullable int. Steps to reproduce:
I've created a test method
[code]....
In MVC3 RC1 this was working without any problems with the nullable int
Update: I don't seem to have the problem with a newly created MVC3 website. What could I have in my project that influence model binding to nullable int's? And why would there be a difference between RC1 and RC2?
I have a Gridview in the markup and I add an ObjectDataSource to the mark up which will be the gridviews data source. Is this a redundant way of binding controls? I believe using this method is good for small sites with little customisation etc. but, for large sites (multi lingual, hundreds of pages etc) I have been taught to create the controls in the mark up or code behind, then bind the controls on PreRender in the code behind. My new boss thinks this method is old school and the current way of using an objectdatasource in the mark up is the best way to do it.
I am using subsonic in asp.net forms C# and I have an instance where I need to loop through a recordset and for each one call the Database to get specific information from a view about that record.
in this instance it is a venue, loop through and for each venue I show there spend and there budget, but I am at a loss as to how I can say use a gridview, execute more code on each row and then add more columns to that row.
just as an update i have been playing with the idea of something like this:
DataSet ds = new DataSet(); ds.Tables.Add(LinqToDataTable(club.All().Where(x => x.level == 1))); ds.Tables.Add(LinqToDataTable(ViewBudgetSpend.All().Where(x => x.periodfrom == curperiod))); DataRelation relation = new DataRelation("budgets",ds.Tables[0].Columns["clubId"],ds.Tables[1].Columns["clubid"]); ds.Relations.Add(relation); still working this out though.
I have a gridview with empty data template. In this empty data template i have a table(HTML) with 4 columns. When user enters data i want to save this in a datatable temporarily at a button click event.. Again if user wants to add one more rows data that also should be added to the same table where i added previous row data. So now the datatable has 2 rows. Like this he may add any no of rows. What i want is all the rows should be displayed when i bind datatable to gridview..At the click event i am adding 1 row at a time to the datatable
I'll use Customer and Addresses as an example rather than explain my real objects. Say I have a repeater bound to a collection of Customers and one of the properties of Customer is an array of addresses. How do I bind to the addresses property? I don't even need to display this information I just want to use it in the Repeaters ItemDataBound event. So I tried to bind a hiddenField to the addresses property but all I get for every customer in the hiddenfields value is an empty array of addresses.
I tried binding a ListBox to an Object Data Source, but I cant get the field to show up in the Data Source Configuration Wizzard for the ListBox. I got it working programatically populating the listbox using the DataReader but Id like to be able to use the Object Data Source (Unless there are compelling reasons not to that I havent heard of yet.)
This has been covered a couple of times, without a suitable answer:[URL]
I have created a custom paging data class that is used with an ObjectDataSource. In intial tests, I found it was performing worse than my old SqlDataSource code. Whilst investigating, I found that for every page load, the ObjectDataSource is being created and binding twice.
Investigating the links above led me to believe this could be a bug (or unexplained behavior) in regards to changing my GridView's column visibility in the OnDataBound event like so:
I use this event to customize the display of certain fields, as well as hide columns that are not pplicable during some search types. When I disable the event, the ODS stops binding twice. I can't really think of a way to get around this behavior. Has anyone else see this issue or developed a work around?
CheckPara is my OnDataBinding procedure SqlDataSource1 is ObjectDataSource (it's only confusing name)
Language is Nemerle, but if you know C# you can read it easy protected virtual CheckPara(_ : object, _ : System.EventArgs) : void { foreach(x is Parameter in SqlDataSource1.SelectParameters) when(x.DefaultValue=="") //Cancel binding }
so how can I cancel binding when there is not fully configurated ObjectDataSource ? Or... how can I run binding only when I done with all parameters ?
I have an ASCX that inherits from a WebControl that has a 'CustomConfiguration' property of type CollectionConfigurationItem. This configuration gets set elsewhere in the code, so by the time it gets to the ASCX it is set up to how I wish to use the data. At this point I'd like to render out another control using this configuration, like so:
However, breaking into DataModule always results in 'CustomConfiguration' being null, which is the default value for the property. I've tried adding a Bindable attribute to the property but to no avail, and when I set an EventHandler for the DataBinding event on the DataModule it doesn't even get called.
How can I set this custom-class-typed property from the markup or, failing that what's the second-best method of getting this to work?
i hav a gridview ... now i need to add certain number of rows... say 5 rows .... which would b blank .. the rows consist of itemtemplate of textboxes.. here is the grid ...
[Code]....
now i am binding this gridview with certain data say :
[Code]....
now the problem is if the row contains 2 data originally ... then it alwz shows up with only two rows with binded data... but what i want is 2 (databinded rows ) + 5 (empty rows with textbox ) = 7 grid view rows .... now how to do it ... after i hav binded the textbox with data already....with some empty columns corresponding to the above code ?
Quick question here. I'm sure it's possilbe, just can't get it to work.
I've got a gridview. In have a gridview. The gridview is bound to a list of my custom class. The class exposes a link to an image as well as the image's height and width. I have a Image Control in the gridview. I've bound the Image Url to the correct property. Now, I'd like to bind the height and width properties as well. But everytime I do that I get the following error:
Cannot create an object of type 'System.Web.UI.WebControls.Unit' from its string representation '"<%#Bind("GetImageHeight()")%' for the 'Height' property.
I followd Brian Orrell LINQ tutorial for paging/sorting and created a gridview bound to an ObjectDataSource through a method call which gets data from adatabase. My form includes two buttons with a textbox next to each one of them. I need to be able to populatte th egridview depending on the button that was pressed, I cannot figure out how signal my method which button was pressed. [Code].... [URL]
have a dropdownlist (ddl2) which is dependent on the selected value of another dropdownlist (ddl1).I have set the appendatabounditems to "true" for ddl2 and have added a "Please Select" and a "Select All" options. The Options show in the list when the page first loads. When ddl1 is selected the page refreshes and ddl2 is populated, however the "Please Select" and "Select All" options have disappeared.
I have an ODS control populating a Telerik grid. The ODS definition is pretty simple. It's set to call a method on a static class that has one parameter (entityID). I set this parameter in the OnSelecting event. When I test this, the world is a happy place and all is fine.
Then, I pass a query string to the page (which sets various unrelated values for the page, we'll say parameters X and Y). The page call's Telerik's radgrid.Rebind() event. When this happens, an error is throw from the ODS saying that the underlying method (the static data procedure) does not support parameters X and Y.
So, why is ODS thinking it should be using any querystring values at all when I have explicitly set the entityID parameter (of type Asp:Parameter)? How do I stop this from happening?
The Html:
[Code]....
The OnSelecting:
[Code]....
I see this odsList_OnSelecting being hit and the inspection of e.InputParameters only contains my expected single entry.
I have a DetailsView control with a SelectMethod and two select parameters wich one of the parameters is a control parameter, The parameters are not passed to objectDatasource's select method, the objectdatasource has been defined as follows: