Forms Data Controls :: DropDownList Disappears From Gridview On RowUpdating?
Jan 21, 2011
I am populating a column in a gridview with a dropdownlist as follows:
[Code]....
[Code]....
When I edit the gridrow, the dropdown is there and I can select a new item.
But I can't find the dropdown during the rowupdated event. The cell control says it's a Textbox. All of the other items in the row are fine and I can get the data back. But I can't get the DropDown item.
Here are some of the things I have tried in the RowUpdating event:
DropDownList test = (DropDownList)e.FindControl("ddlPeriod");
//null
DropDownList ddl = (DropDownList)GridView1.Rows[e.RowIndex].FindControl("ddlPeriod");
//Also null
var test = row.Cells[8].Controls[0];
//Says its a textbox.
View 5 Replies
Similar Messages:
Jun 16, 2015
i ask what code can generate on how to Populate and save ASP.Net Dropdownlist with Selected Value in Gridview Rowupdating ?
View 1 Replies
Apr 1, 2010
I've put a simple gridview on my Asp.net webpage. I've configured the fields via C# code:
gvMainDataGrid.AutoGenerateColumns = false;
gvMainDataGrid.AutoGenerateDeleteButton = false;
BoundField bfldSeqNmbr = new BoundField();
bfldSeqNmbr.DataField = "PKSequenceNmbr";
bfldSeqNmbr.Visible = false;
gvMainDataGrid.Columns.Add(bfldSeqNmbr);
BoundField bfldEmployeeCode = new BoundField();
bfldEmployeeCode.DataField = "Employee Code";
bfldEmployeeCode.HeaderText = "Employee Code";
gvMainDataGrid.Columns.Add(bfldEmployeeCode);
BoundField bfldProjectCode = new BoundField();
bfldProjectCode.DataField = "Project Code";
bfldProjectCode.HeaderText = "Project Code";
gvMainDataGrid.Columns.Add(bfldProjectCode);
BoundField bfldProcessCode = new BoundField();
bfldProcessCode.DataField = "Process Code";
bfldProcessCode.HeaderText = "Process Code";
gvMainDataGrid.Columns.Add(bfldProcessCode);
BoundField bfldActivityDate = new BoundField();
bfldActivityDate.DataField = "Date";
bfldActivityDate.HeaderText = "Date";
gvMainDataGrid.Columns.Add(bfldActivityDate);
BoundField bfldActivityHours = new BoundField();
bfldActivityHours.DataField = "Activity Hours";
bfldActivityHours.HeaderText = "Activity Hours";
gvMainDataGrid.Columns.Add(bfldActivityHours);
CommandField cfldDeleteButton = new CommandField();
cfldDeleteButton.ShowDeleteButton = true;
gvMainDataGrid.Columns.Add(cfldDeleteButton);
It's data source is a Dataset retrieved from a webservice. Here is the C#code to bind the data to the gridview
Service1 MyService = new Service1();
dsMainData = MyService.GetData(strIdNumber);
gvMainDataGrid.DataSource = dsMainData;
gvMainDataGrid.DataBind();
It retrieves great. No problems at all. Then, when I actually try to use the delete button, I get an error that the RowDeleting event is not being handled. I thought that was pretty explicit, so I created the event:
private void gvMainDataGrid_RowDeleting(Object sender, GridViewDeletedEventArgs e)
{
return;
}
Well.....that didn't work. So, I thought that maybe I needed to configure it via the actual aspx file. So, I changed
<asp:GridView ID="gvMainDataGrid" runat="server">
</asp:GridView>
to this:
<asp:GridView ID="gvMainDataGrid" runat="server" ondeleting="gvMainDataGrid_RowDeleting">
</asp:GridView>
But, no avail. I've scoured the web and tried so many combinations of capital letters and whatnot -- but no effect.
View 3 Replies
Jul 13, 2010
Here is the code with the issue:
[Code]....
The value of txtName, for example, contains the value prior to editing and clicking update. Here is the grid code:
[Code]....
View 17 Replies
Apr 23, 2010
I have a GridView on my page and I have bound a custom DataSource (DataTable populated from an SQL query) within an UpdatePanel. I have set the OnRowUpdating property and create the code behind stuff as well as setting AutoGenerateEditButton to true. The problem I have is that when I click on 'Edit', then change some values then click 'Update', I can only get the old values.
.ASPX
[Code]....
All of the other posts I have read have mentioned the GridView being bound on post back or within a RowDataBound event but I'm pretty sure that I am not doing that.The RowUpdating event does fire but the value of Jockey, for example, is still the original.
View 3 Replies
Mar 18, 2010
[Code]....
Dynamic Gridview is Empty on RowUpdating
View 9 Replies
Aug 31, 2010
I have a GridView within a GridView. I want o access child gridview's rowupdating event. i want to update row.
this is my GridView's code as follows
[Code]....
View 6 Replies
Mar 26, 2010
[Code]....
View 2 Replies
Sep 24, 2010
my gridview row updating events return old values.. edititem templatefield gets its old value on row updation.
My code is as follows :-
[Code]....
View 5 Replies
Nov 25, 2010
I have a GridView ona "View Order" page which pulls data from a table: an item name, its description, the quantity ordered, the unit price and the total (item) cost: unit price * quantity ordered. This data, including the calculation for total cost is handled on the previous "Place Order" page using a Stored Procedure.
I want the user on the "View Order" page to be able to hit the standard "Edit" link (Command Field over at the left) and then change the "Quantity" field. This works fine and, when "Update" is hit, the field reflects the change.
PROBLEM: Because the Total Cost is calculated on the previous page, thsi doesn't change, I need to calculate it again.
WHAT I'VE TRIED: I've stripped the TotalCost field out of the SqlDataSource Update commands and attempted to use e.NewValues in the RowUpdating event handler to inject the new calculation. This doesn't work.
WHAT HAPPENS: The "ViewOrder" page refreshes, the new quantity is there but the TotalCost has not changed. No errors reported.
Is this the right way to do it and, if so, is my code okay? Here it is:
ASPX for ViewOrder:
[Code]....
And here's the Code Behind for ViewOrder:
[Code]....
"OrderMealValue" is the field for the Total Cost.
The fourth colum contains the Quantity and the fifth the price for one item.
View 2 Replies
Mar 3, 2010
I have a GridView. I allow editing using:
[Code]....
As I allow editing of row, so I have GridView:RowUpdating(). In it, I check if the entered value is valid. If not, I have e.Cancel = true.
[Code]....
After I see the message box comes up, the textbox still stays the same. I expect the textbox will disappear just as if I have pressed the Cancel button. (By the way, the ClientUtil is a class someone has written for me.)
How do I make the e.Cancel = true works as if I press the Cancel button.
View 2 Replies
Jun 17, 2010
I am trying to update the row using gridview_rowupdating event but I am unable to update. I tried the code like this...
foreach (GridViewRow i in GridView1.Rows)
{
TextBox sname = i.FindControl("sname") as TextBox;
TextBox fname = i.FindControl("fname") as TextBox;
TextBox sex = i.FindControl("txtsex") as TextBox;
// Label lblpin1 = i.FindControl("lblpin") as Label;
TextBox tpin = i.FindControl("txtpin") as TextBox;
tpin.Enabled = true;
// lblpin1.Enabled = true;
string pinno;
pinno = Convert.ToString(tpin.Text.Trim());
conn2.Open();
SqlCommand cmd = new SqlCommand("update NRDetails2010 set SNAME='" + sname + "',FNAME='" + fname + "',SEX='" + sex + "' where pin='" + pinno.Trim() + "' and InstCode='" + Session["UId"] + "' and Sem='" + ddlsem.SelectedItem.Text + "' and scheme='"
+ ddlscheme.SelectedItem.Text.Trim() + "' ", conn2);
cmd.ExecuteNonQuery();
conn2.Close();
}
I am getting error at cmd.ExecuteNonQuery()
Here I am giving connection globally and opening in this event. In gridview, I am updating 3 fields depending on 4 conditions.
View 3 Replies
Dec 17, 2010
The table serving as the data source is a simple access table.
[Code]....
View 7 Replies
Mar 15, 2010
I have a Modified Date and Modified By column in my gridview and I want them to be updated with the current date and current user any time a user updates the row.
I converted my columns to template fields and the textboxes in the edititemtemplate are bound to my sql data columns "ModifiedDate" and "ModifiedBy"
Then I added the attached code in my RowUpdating event.
When I test the code and click the Update link on my gridview I don't get an error but the values don't update either. I put a breakpoint on the code and when I hover over "ModifiedDateLabel.Text" I see the old value of the field so I know I'm accessing the control correctly.
View 3 Replies
Feb 1, 2010
I'm creating a GridView in code. I can successfully attach handlers for Editing, and CancelEditing. RowUpdating never runs, however. Instead, if the GridView is in a Panel, the Edit handler is called when Update is clicked (and this is the command name I get back on the Update click, too). If the GridView is not in a panel, then the Cancel handler is called when Update is clicked (again, this is the command name I get back from clicking Update). I've searched high and low for a reason why the RowUpdating event is not getting called, and I can't find one. Does anyone out there haveHere is my code (My actual code is much more involved than this, but for testing purposes, I extracted the following code and stuck it in a new project to isolate my problem):
protected void Page_Init(object sender, EventArgs e)
{
if (!IsPostBack)
[code]...
View 1 Replies
Jun 12, 2012
Specified argument was out of the range of valid values.Parameter name: index
After adding a check box to gridview when i am updating teh gridview I get above error
cmd.Parameters.Add("@c_name", SqlDbType.VarChar).Value = ((TextBox)Gridview1Rows[0].Cells[1].Controls[0]).Text;
cmd.Parameters.Add("@c_amt", SqlDbType.VarChar).Value = ((TextBox)Gridview1Rows[0].Cells[2].Controls[0]).Text;
cmd.Parameters.Add("@c_type", SqlDbType.VarChar).Value = ((TextBox)Gridview1Rows[0].Cells[3].Controls[0]).Text;
cmd.Parameters.Add("@check", SqlDbType.Bit).Value = ((CheckBox)Gridview1Rows[0].Cells[4].Controls[0]).Checked;
Before to checkbox addition it was wroking fine
View 1 Replies
Jan 13, 2010
I have a gridview where in the users are allowed to edit certain data and there is an update on top of the page which will send out all the changes made inside the GridView. But, the problem is , as soon as the update button is clicked, the grid disappearsand no update is made. This problem occurs when the size of the data on the page is huge. When we have less amount of data on the gridview, It does update. But, when there is a huge amount of data on the gridview, it does not. We have tried to increase the page size on the server, but to no use.
View 3 Replies
Jul 24, 2010
I'm trying to figure out why my gridview disappears when I trigger the rowediting event.
The Gridview:
[Code]....
The code-behind:
[Code]....
When I click on the edit linkbutton, the gridview disappears. What is going wrong?
View 13 Replies
Jan 18, 2011
I use Server.Transfer("pagename", True) to navigate from a page where two dates have been selected to a page with a gridview that uses the dates to query the database and display the results. The gridview initially displays correctly but when I operate the select or sort it disappears.
View 8 Replies
Feb 23, 2010
I've got a Gridview in which I use the RowDataBound handler to color the lines according to certain conditions
(ie if column x is value y then change the background-color of the row to z etc).
One problem though, as soon as I do a postback the coloring disappears altogether and all rows become white.
Is there some way around this so I can retain my background colors even after a postback?
View 14 Replies
Jun 1, 2010
I have a datarepeater inside which I load a gridview. After the grid's binding is done I create an extra header line to group the columns (that's the only way I could do it, I couldn't figure a way to add an event for a control inside the repeater).That works fine and the page displays perfectly.However everytime I do a postback from other controls, I lose the 2nd header and 1 extra empty line appears at the top of the gridview
View 5 Replies
May 4, 2010
have an ASP.net 4.0 page containing a GridView, where during the Page_Init event I'm dynamically adding BoundField columns to the gridview. I also have some custom sorting and paging methods that I use with this gridview, which result in postbacks on the page. In Chrome, Firefox, Safari, and Opera the gridview behaves as expected. HOWEVER, in IE 6, 7, or 8 when I click to sort a column in the gridview, or go to the next page of results in the gridview, it does not bind on postback, returning nothing back to the browser. Again, in anything but Internet Explorer, paging and sorting (frankly any postback event) brings back the gridview in its expected state. I only have the problem in IE. Relevant snippets of my code follow, where you'll see my Page_Init event calling a method in my WebFunctions class to add the BoundField columns for the table I pass to it, and my Page_Load event that calls the method in the user control responsible for binding my dataset to the gridview. Initial page load works in all browsers, but postback loading of the gridview only works in non-IE browsers.
[Code]....
View 4 Replies
Apr 1, 2011
I have a gridview with daatsource from MembershipUserCollection. When my collection doesn't contain any records the gridview just disappears. I want to display the empty gridview indicating no records exist rather than the grid just become invisible.
How to make gridview always visible ?
View 4 Replies
Jul 28, 2010
I have a page with a TextBox, a Button, a GridView, and a SqlDataSource. I click the Button to execute the SQL in the TextBox using the SqlDataSource. The SqlDataSource populates the GridView. Everything works as expected until I click a column heading to sort.
When I click a column heading, the GridView disappears and I have to click the Button to display the grid again. When I do, the grid is displayed in the order of the column I clicked.
I don't understand why the GridView is disappearing when I click a column header.
Does anyone know how to fix this so the GridView is sorted and displayed only by clicking the column header?
ASPX:
[Code]....
Code behind:
[Code]....
View 9 Replies
Jun 15, 2010
I have a small problem I am returning some data from a query and have allowed paging, however when I click on the next button to view the following page the gridview disappears.
My datasource is specified in the code behind:
<asp:Panel ID="dtpanel" runat="server" Visible="False">
<asp:GridView ID="grddetails" runat="server" AutoGenerateColumns="False" AllowPaging="True"
OnPageIndexChanging="grddetails_SelectedIndexChanged" ViewStateMode="Enabled"
onselectedindexchanged="grddetails_SelectedIndexChanged" AllowSorting="True" >
<Columns>
<asp:BoundField DataField="Col1" HeaderText="Col1" SortExpression="Col1" />
<asp:BoundField DataField="Col2" HeaderText="Col2" SortExpression="Col2" />
<asp:BoundField DataField="Col3" HeaderText="Col3" SortExpression="Col3" />
<asp:BoundField DataField="Col4" HeaderText="Col4" SortExpression="Col4" />
<asp:BoundField DataField="Col5" HeaderText="Col5" SortExpression="Col5" />
<asp:BoundField DataField="Col6" HeaderText="Col6" SortExpression="Col6" />
</Columns>
</asp:GridView>
</asp:Panel>
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
protected void GridView2_SelectedIndexChanged(object sender, GridViewCommandEventArgs e)
{
int y = Convert.ToInt32(e.CommandArgument);
Control control = GridView2.Rows[y].Cells[0].Controls[0];
LinkButton btn = control as LinkButton;
string qval = btn.Text;
string query = "SELECT * FROM Table WHERE Col LIKE '%" + qval + "%'";
string connectionString = @"Data Source=servername;Initial Catalog=dbname;Integrated Security=True";
SqlConnection accessConnection = new SqlConnection(connectionString);
SqlCommand accessCommand = new SqlCommand(query, accessConnection);
SqlDataAdapter grddetailsDataAdapter = new SqlDataAdapter(accessCommand);
DataTable grddetailsDataTable = new DataTable("Table");
grddetailsDataAdapter.Fill(grddetailsDataTable);
int dataTableRowCount = grddetailsDataTable.Rows.Count;
if (dataTableRowCount > 0)
{
grddetails.DataSource = grddetailsDataTable;
grddetails.DataBind();
}
dtpanel.Visible = true;
}
protected void GridView1_SelectedIndexChanged(object sender, GridViewCommandEventArgs e)
{
int w = Convert.ToInt32(e.CommandArgument);
Control control = GridView1.Rows[w].Cells[0].Controls[0];
LinkButton btn = control as LinkButton;
string qval2 = btn.Text;
Label1.Text = btn.Text; string query = "SELECT * FROM Table WHERE Col LIKE '%" + qval2 + "%'";
string connectionString = @"Data Source=servername;Initial Catalog=dbname;Integrated Security=True";
SqlConnection accessConnection = new SqlConnection(connectionString);
SqlCommand accessCommand = new SqlCommand(query, accessConnection);
SqlDataAdapter grddetailsDataAdapter = new SqlDataAdapter(accessCommand);
DataTable grddetailsDataTable = new DataTable("Table");
grddetailsDataAdapter.Fill(grddetailsDataTable);
grddetails.DataSource = grddetailsDataTable;
grddetails.DataBind();
dtpanel.Visible = true;
}
protected void grddetails_SelectedIndexChanged(object sender, GridViewPageEventArgs e)
{
DataTable dataTable = grddetails.DataSource as DataTable;
grddetails.PageIndex = e.NewPageIndex;
grddetails.DataBind();
dtpanel.Visible = true;
}
}
View 5 Replies