daforga
asked on
Gridview Button not firing on first click
This works but only on the 2nd click of the gridview button. Following is the code I have used. Any help is appreciated.
I have constructed a gridview
<asp:GridView ID="gvAction" runat="server"
AutoGenerateColumns="False "
SkinID="GridViewCTELNopagi ng"
onrowdatabound = "gvAction_RowDataBound" >
with a button in a template field.
<asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:Button ID="btnActionGridSearch" runat="server" CommandName="EditAction"
Text="Edit" OnClick = "btnActionGridSearch_Click " />
</ItemTemplate>
</asp:TemplateField>
In code behind:
rowdatabound:
protected void gvAction_RowDataBound(obje ct sender, GridViewRowEventArgs e)
{
GridView gv = (GridView)sender;
RowCount = e.Row.RowIndex;
if (e.Row.RowType == DataControlRowType.DataRow )
{
e.Row.Style["cursor"] = "hand";
btn = (Button)e.Row.FindControl( "btnAction GridSearch ");
btn.Attributes.Add("rowNum ber", RowCount.ToString());
btn.ID = RowCount.ToString();
e.Row.Cells[1].Style.Add(" display", "none");
}
}
button click:
protected void btnActionGridSearch_Click( object sender, EventArgs e)
{
//Go to hidden panel to display the Followups specific to this opportunity
Button btn = (Button)sender;
string it = btn.Attributes["rowNumber" ].ToString ();
int TheRow = Convert.ToInt16(it);
string ActionID = gvAction.Rows[TheRow].Cell s[1].Text;
DataTable dtActionItems = dalOpportunityDetail.GetAc tionByID(A ctionID);
txtFUSummary.Text = dtActionItems.Rows[0]["Sum mary"].ToS tring();
txtMemo.Text = dtActionItems.Rows[0]["Mem o"].ToStri ng();
string type = dtActionItems.Rows[0]["Typ e"].ToStri ng();
if (dtActionItems.Rows[0]["is FollowupCl osed"].ToS tring() == "-1")
{
rbFuOpen.Checked = true;
rbFuClosed.Checked = false;
}
else
{
rbFuOpen.Checked = false;
rbFuClosed.Checked = true;
}
pnFollowups.Visible = false;
pnFollowupDetail.Visible = true;
}
I have constructed a gridview
<asp:GridView ID="gvAction" runat="server"
AutoGenerateColumns="False
SkinID="GridViewCTELNopagi
onrowdatabound = "gvAction_RowDataBound" >
with a button in a template field.
<asp:TemplateField HeaderText="Edit">
<ItemTemplate>
<asp:Button ID="btnActionGridSearch" runat="server" CommandName="EditAction"
Text="Edit" OnClick = "btnActionGridSearch_Click
</ItemTemplate>
</asp:TemplateField>
In code behind:
rowdatabound:
protected void gvAction_RowDataBound(obje
{
GridView gv = (GridView)sender;
RowCount = e.Row.RowIndex;
if (e.Row.RowType == DataControlRowType.DataRow
{
e.Row.Style["cursor"] = "hand";
btn = (Button)e.Row.FindControl(
btn.Attributes.Add("rowNum
btn.ID = RowCount.ToString();
e.Row.Cells[1].Style.Add("
}
}
button click:
protected void btnActionGridSearch_Click(
{
//Go to hidden panel to display the Followups specific to this opportunity
Button btn = (Button)sender;
string it = btn.Attributes["rowNumber"
int TheRow = Convert.ToInt16(it);
string ActionID = gvAction.Rows[TheRow].Cell
DataTable dtActionItems = dalOpportunityDetail.GetAc
txtFUSummary.Text = dtActionItems.Rows[0]["Sum
txtMemo.Text = dtActionItems.Rows[0]["Mem
string type = dtActionItems.Rows[0]["Typ
if (dtActionItems.Rows[0]["is
{
rbFuOpen.Checked = true;
rbFuClosed.Checked = false;
}
else
{
rbFuOpen.Checked = false;
rbFuClosed.Checked = true;
}
pnFollowups.Visible = false;
pnFollowupDetail.Visible = true;
}
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.