DataSource Controls :: Getting Value From LinqDataSource In FormView DataBound Event?
Mar 16, 2010
I just started working with LinqDataSources and I was wondering how you retrieve values in a FormView DataBound Event.
With an ObjectDataSource I believe you can grab them like:
[Code]....
Is there a similar way to acheive this with a LinqDataSource?
View 4 Replies
Similar Messages:
Aug 7, 2010
I have a gridview on a page and based on the row selected I need to fill out a form view (dynamic data enabled) from a linqdatasource. On gridview_sleectedindexchanged I create the linqdatasource and set it as the datasource for the formview. It displays nicely but clicking update returns a "Could not determine a MetaTable" error for the datasource mapped.
THe goal is to create a single page that allows users to select a row then get the appropriate data, create an updateable formview so further edits can be done. Do not want to scaffold.
View 3 Replies
Apr 23, 2010
I have FormView in my page markup:
[code].....
In theory, I'm able to find control on FormView after it being data bound. But I'm not. Why?
View 1 Replies
Feb 10, 2011
I have a FormView bound to LinqDataSource, that is intended to allow editing of a single product's details, that is selected from a GridView. The LDS has a Where parameter set to point to the GridView control (i.e. a ControlParameter).
View 1 Replies
Sep 23, 2010
in the selected event it seems even though e.TotalRowCount really is the total row count, when I cast e.Result to a type in order to access the actual data only the current page of data is there? not all.
IEnumerable<InventoryGridItem> items = (IEnumerable<InventoryGridItem>)e.Result;
items only has the 15 records for the current gridView page, not all the records, is this normal? If I need to access all the items in the result do I need to stick with the selecting event instead?
View 2 Replies
Jan 27, 2010
Does anyone have an example of a formview and a gridview master detail relationship in c# ?
The gridview datasource is a datatable and the gridview is inside of the edititemtemplate of the formview.
In what event of the formview do you bind the gridview datasource?
View 4 Replies
Sep 22, 2010
I know the question has already been posted here but we didn't get to an real solution.I have bound my ListView to an SqlDataSource and I want to write some text in a control present in the view created in the LayoutTemplate depending on some properties of the rows returned.Obviously, I'm using the ItemDataBound event to feed my items but this is not the point.
The spontaneous solution was to bind the ListView.DataBound event and access the raw datasource (a DataTable?) and do the required calculations.I inspected the Items property and, despite it was not empty, the related DataItem property was null.The only work-around I can come to is to execute the calculations in the ItemDataBound event and accumulate the result in some private fields. But it's really ugly to see and makes harder to get some of the required values.
View 1 Replies
May 5, 2010
I'm working in a web application and my page is using a databound formview control. When i first enter the page via my code, I am unable to retreive a value from any of my controls -e.g. when i debug, i see that tbDate.text has no value (see code below). How can I retreive the values from the controls on my page e.g text boxes?
Code:
if (!this.IsPostBack)
{
TextBox tbDate = (TextBox)FormView1.Row.Cells[0].FindControl("txtDate");
}
View 6 Replies
Apr 5, 2010
I've got a formview with controls in different template views and I have a query just out of curiosity.
In my edit template I've got for example:
<asp:TextBox ID="IsPrestigeTextBox" runat="server" Text='<%# Bind("IsPrestige") %>' />
<asp:CheckBox ID="IsPrestigeChkbx" runat="server" />
and then the same code exactly in my insert template:
<asp:TextBox ID="IsPrestigeTextBox" runat="server" Text='<%# Bind("IsPrestige") %>' />
<asp:CheckBox ID="IsPrestigeChkbx" runat="server" />
However, the databound items seem to be allowed to have the same ID whereas the non-databound checkboxes arent.
What's going on there?
View 6 Replies
Apr 27, 2010
i already have a DataList, and i get any information from the rows i need by adding code such as:
[code]....
Well what i am doing there is using the values from the items that the DataList has obtained from the rows, now, what i need to do is EXACTLY the same, but for the FormView, i realised that this code does not work for the FormView, but only DataList control.
give me the code for doing exactly as shown, but for the FormView control.
View 8 Replies
Jul 22, 2010
I wanted to get the total row count in a GridView's databound event handler, so I tried the following:
protected void grid_DataBound(object sender, EventArgs e)
{
GridView grid = (GridView)sender;
DataSet data = grid.DataSource as DataSet;
if (data == null)
return;
int totalRows = data.Tables[0].Rows.Count;
}
The problem is that the grid.DataSource property is null. The DataSourceID property is not null, so does that mean that I can't access the DataSource object in the DataBound event handler unless I assign the DataSource property directly?
Edit1: Here is the code in my GridHelper class for adding rowcount to the BottomPagerRow. I would like to get rid of the requirement to pass in the ObjectDataSource, but can't because I need to use the Selected event to get total row count. Hence the reason for the question. I also think this might be better in a custom control where I can access ViewState, and/or create child controls during the Init event (I still have a problem to resolve with the way the pager renders with an extra cell), but then I'd still have the problem of how to get to the total row count when the DataSource itself doesn't appear to be available in any GridView events.
Edit 2: Not really relevant to the specific problem, but I resolved the problem I was having with the pager rendering so i've updated the code posted. I found the trick here: [URL]
#region Fields
private int totalRows = -1;
#endregion
#region Constructors
/// <summary>
/// Initializes a new instance of the <see cref="GridHelper"/> class.
/// Adds EventHandlers to the GridView to display results from the ObjectDataSource in the footer.
/// Marked as obsolete because AddResultsToFooter method provides a static access to the same functionality
/// An instance of GridHelper is required by the passed in GridView to store the totalRows value between the two event handlers
/// </summary>
/// <param name="grid">The grid.</param>
/// <param name="source">The ObjectDataSource linked to the GridView.</param>
[Obsolete("Use AddResultsToFooter instead.")]
[EditorBrowsable(EditorBrowsableState.Never)]
public GridHelper(GridView grid, ObjectDataSource source)
{
source.Selected += source_Selected;
grid.PreRender += grid_PreRender;
}
#endregion
#region Event Handlers
private void grid_PreRender(object sender, EventArgs e)
{
GridView grid = (GridView)sender;
if (grid.HeaderRow != null)
grid.HeaderRow.TableSection = TableRowSection.TableHeader;
//Add a cell to the bottom pager row to display the total results
if (grid.BottomPagerRow == null || !grid.BottomPagerRow.Visible)
return;
//Get the control used to render the pager
//http://michaelmerrell.com/2010/01/dynamically-modifying-the-asp-net-gridview-paging-control/
Table tblPager = grid.BottomPagerRow.Cells[0].Controls[0] as Table;
if (tblPager == null)
return;
if (totalRows < 0)
{
//The DataSource has not been refreshed so get totalRows from round trip to client
addResultsToPagerTable(tblPager, grid.Attributes["results"]);
return;
}
int firstRow = grid.PageIndex * grid.PageSize + 1;
int lastRow = firstRow + grid.Rows.Count - 1;
string results;
if (totalRows <= grid.PageSize)
results = string.Format("<span class='grid-pager'>{0} Results</span>", totalRows);
else
results = string.Format("Results <b>{0}</b> to <b>{1}</b> of <b>{2}</b>", firstRow, lastRow, totalRows);
addResultsToPagerTable(tblPager, results);
//Need to store the information somewhere that is persisted via ViewState, and we don't have access to ViewState here
grid.Attributes.Add("results", results);
}
/// <summary>
/// Handles the Selected event of the source control. Gets the total rows, since it is not possible to access them from the GridView.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The <see cref="System.Web.UI.WebControls.ObjectDataSourceStatusEventArgs"/> instance containing the event data.</param>
private void source_Selected(object sender, ObjectDataSourceStatusEventArgs e)
{
if (e.ReturnValue is DataView)
totalRows = ((DataView)e.ReturnValue).Count;
else if (e.ReturnValue is EntitySet)
totalRows = ((EntitySet)e.ReturnValue).Count;
}
#endregion
#region Private Methods
private static void addResultsToPagerTable(Table tblPager, string results)
{
//http://michaelmerrell.com/2010/01/dynamically-modifying-the-asp-net-gridview-paging-control/
//Get a handle to the original pager row
TableRow pagesTableRow = tblPager.Rows[0];
//Add enough cells to make the pager row bigger than the label we're adding
while (pagesTableRow.Cells.Count < 10)
pagesTableRow.Cells.Add(new TableCell { BorderStyle = BorderStyle.None });
//Add a new cell in a new row to the table
TableRow newTableRow = new TableRow();
newTableRow.Cells.AddAt(0, new TableCell
{
Text = results,
BorderStyle = BorderStyle.None,
ColumnSpan = pagesTableRow.Cells.Count
});
tblPager.Rows.AddAt(0, newTableRow);
}
#endregion
#region Public Methods
/// <summary>
/// Adds EventHandlers to the GridView to display results from the ObjectDataSource in the footer.
/// </summary>
/// <param name="grid">The GridView.</param>
/// <param name="source">The ObjectDataSource linked to the GridView.</param>
public static void AddResultsToFooter(GridView grid, ObjectDataSource source)
{
if (grid == null)
throw new ArgumentNullException("grid", "grid is null.");
if (source == null)
throw new ArgumentNullException("source", "source is null.");
new GridHelper(grid, source);
}
#endregion
View 1 Replies
Dec 27, 2010
I have a very simple form that contains a FormView Control Bound with a SqlDataSource, The DefaultMode of the FormView control is "Insert". I noticed that when I run the page for the first time, the databinsing and databound events of the FormView Control occurs after the PreRender Event of the page ! I know very well the life cycle of a page, but I dont know when the data binding occurs in the life cycle of a page and if it can differ from a control to another.
Is there an article or a tutorial explaining all those things.
View 2 Replies
Jan 24, 2010
I have a formview that use the formview iteminserted event. The information inserts into the formview fine, but all cells blank out after the insert. How can I make it so I can show all the values I have inserted show up in the formview after the inteminserted event?
View 2 Replies
Aug 31, 2010
I have a page that has a formview on it. Client info, name, address, usual stuff. The formview is populated by a DataSource, that calls a SQL stored procedure for the client info. It all works great.Within the formview, I have a dropdownlist for the Staff assigned to the client (StaffId is a member of the Client record called during the Formview binding). When the formview is in Item mode, the Staff name appears in a label, when in Edit mode, the dropdownlist
is bound and populated by another DataSource that calls a stored procedure of ActiveStaff. When the assigned staff exists, the StaffId is correctly bound to the DDL SelectedValue and the current staff name appears selected in the DDL when in edit mode, as it should.
View 3 Replies
Sep 23, 2010
In my web app, I used LinqDataSource, ListView and DataPager (.NET 3.5 sp1) to implement search feature with paging. I have a button to trigger the search.
But In the first time, the Selecting event of LinqDataSource fire twice and I don't know why (I debugged my code very carefully). I don't use QueryString with DataPager and assign PageSize of DataPager in the first time of page load to prevent the ListView bind again (as in some instructions I found in forum)
I can't post my code because it's quite large.
View 5 Replies
Jun 11, 2010
Im trying to build a where clause in c# for a LinqDataSource, but I cant get it to work, heres my code
[Code]....
when I set category to 'Concerts' tyhe where clause is
'Category = Concerts'
this generates an error telling me there is no column called 'Concerts'. I assume I somehow have to enclose the search term in quotes, Ive tried single and double quotes, but nothing works.
View 5 Replies
Nov 16, 2010
So I need to take the literal "SELECT....FROM Bay....WHERE Warehouse=1 and ((BAY LIKE '1.0%' or BAY LIKE '2.0%'))I have set up a linqdatasource on my asp page and I want to bind that to a gridview. Here is the start of the HTML:
<asp:LinqDataSource
ID="dsBays"
runat="server"
ContextTypeName="CartonInventory.CartonInventoryDataContext"
EnableUpdate="True"
[code]...
How do I add a parameter so that it includes the LIKE statement?
View 1 Replies
Jun 12, 2010
I'v been using SqlDataSource and ObjectDataSource for a while.I would like to know about LinqDataSource and EntityDataSource. Therefore I have 2 questions to ask.1) Why do we need to use those twos? 2) In which cirmustances (Requirements) developers are using LinqDataSource and EntityDataSource?
View 1 Replies
Mar 12, 2010
i am an asp.net beginner, i am a windows application programmer and currently i am working on big project " Human Resources" and i need to allow the users to apply for jobs using a web page.in windows application, i can use the bindingsource to bind textboxes and comboboxes to the fields of an object from L2S.and to bind the datagrid also to the detailed data and the page will be for inserting issue only,i.e i don't need to bring the data of applicants and certificates from the database, i just need some lookup data like maritalstatusCombo and availableJobsList things to allow the user to choose from.how can i do this using linqdatasource.
View 3 Replies
Mar 11, 2010
I use LinqDataSource and GridView.
I need an old value of field "PictureBig" in RowUpdating handler like this:
e.OldValues["PictureBig"]
To achieve this I use bound unvisible literal in edit item template...
<asp:Literal ID="ltBig" runat="server" Text='<%# Bind("PictureBig") %>' Visible="false" />
Is there any better ways of doing this?
View 5 Replies
Mar 23, 2011
I am trying to program the where prameters for this in code behind in C#, and is there really no way to do more than one parameter? Or am I not understanding this correctly? It seems only the 2nd parameter gets executed, no matter which one is at begining. I debug and seems they both get executed fine, but my listview doesn't get filtered and instead only the 2nd paramter works. Look at my code:
Also, if I do myLinq.Where = "division ==1 and someotherInt = 2", it works fine, but if I do two different data types, it will throw error. Since I want to filter with two different data types, hwo do I do this?
Parameter pram1 = new Parameter();
pram1.Name = "division";
pram1.DbType = DbType.Int32;
[code]...
View 20 Replies
Sep 4, 2010
I'm having a question about the LinqDataSource. Does anyone know if it's possible to perform multiple inserts with the LinqDataSource? Let's say for example that I have 2 tables.
Table A
AID = PK autoincrement Name AddressA FK AddressB FK
Table B
BID = PK autoincrementStreetNumberPostalCodeCountry
These tables are just examples to clarify my question. Let's say that I have a FormView with a LinqDataSource where the user can enter his name en a billing address (A) en delivery address (B). Now I would like to know if the LinqDataSource is able to insert 2 records in table B and use these ID's to insert them in table A together with the name?
View 2 Replies
Jun 15, 2010
I need to retrieve data using a date as an input parameter. I created a WhereParameter and passed in a date value that I know to exist in the database, but no data is returned. Heres my code
[Code]....
Ive passed in '02/06/2010' as the date, in the database, the Startdate column has several values of '2010-06-02 13:08:50.503' so I guess its not being found because of the time part. Whats the best way to make sure that I retrieve the correct data ? Im not concerned about the time at all, I just need all rows for 02/06/2010.
View 3 Replies
Nov 18, 2010
If I have a Linqdatasource that isn't connected to a a bound control on my page how do I use the data source to read data in the code behind. ie
var query = (from x in linqdatasource select x)
What I actually want to do is create a data array (myArray) within the code, read all of the data from the linqdatasource (selecting 1 field to form tableDataArray), then compare the two arrays and then write (insert) those into in myArray that are not already in the datasource to the datasource (ie execute an insert back on the datasource).
View 1 Replies
Jan 14, 2010
Where can I find documentation on the syntax that is expected for LinqDataSource.Select? It seems to be different from what I would do with Linq inline in C# code. For example, concatenateing something in Linq I would normally just do this in the projection:
new { FullName = (person.FirstName + " " + person.LastName ) }
However, with a LinqDataSource the only way I've found to do this is like this:
new ( String.Concat(person.FirstName, " ", person.LastName) as FullName)
I literally spent hours trying to figure this out, and only succeeded when I found a blog where someone gave this verbatim as an example. So I still don't understand why the syntax is different, the braces versus parens, aliasing, Concat operators. Next time I do this I want a better understanding so I am not playing this guessing game. It's like being handed a compiler, and trying to write a program when you don't know what language the compiler compiles.1. Are there different "flavors" of Linq? Like a VB Linq, and C# Linq?2. If so, is the LinqDataSource using a VB flavor of Linq?3. Really, what is really important to me, where can I find documentation on this particular falvor of Linq that the LinqDataSource expects? The documentation for the LinqDataSource itself gives nothing more than extremely simplistic examples.
View 1 Replies