0
我的GridView与ButtonField字段:OnRowCommand事件有时不发射
<asp:GridView ID="activitygrid" runat="server" CssClass="EU_DataTable" class="ui-body-d" OnRowCommand="activitygrid_RowCommand1" AutoGenerateColumns="False" OnSelectedIndexChanged="activitygrid_SelectedIndexChanged" ShowHeaderWhenEmpty="True" >
<asp:ButtonField CommandName="cmdRegister" Text="register now" ControlStyle-CssClass="table-stripe" HeaderText="register" ButtonType="Button" ControlStyle-Height="20px" >
<ControlStyle CssClass="table-stripe"></ControlStyle>
</asp:ButtonField>
页面加载代码:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindData();
}
else
{
BindDataSecondTime();
}
}
RowCommand代码:
protected void activitygrid_RowCommand1(object sender, GridViewCommandEventArgs e)
{
int index = Convert.ToInt32(e.CommandArgument);
if (e.CommandName == "cmdRegister")
{
registerActivities.Add(relActivities[index]);
//Update the sum
CurrentSum += relActivities[index].ActivityPrice;
lblSum.Text = CurrentSum.ToString();
selectedactivitygrid.DataSource = registerActivities;
selectedactivitygrid.DataBind();
relActivities.Remove(relActivities[index]);
activitygrid.DataSource = relActivities;
activitygrid.DataBind();
}
}
问题是,当我在点击按钮有时会触发事件(通常当我点击按钮的中间时),有时不会。
请帮忙。
也显示代码页。特别是page_load和OnRowCommand – Codeek 2014-12-03 11:15:25
您正在测试哪个浏览器?所有浏览器(IE/FF/Chrome)都显示相同的行为吗?虽然很傻,但是如果你暂时删除这种风格并试试看? – 2014-12-03 11:38:46
我在ie和chrome中测试它,行为是一样的,我尝试删除样式,但它没有,但它没有效果。 – natush 2014-12-03 12:13:33