事件未在aspx视图页面中触发

时间:2014-05-05 13:47:43

标签: c# asp.net .net imagebutton asprepeater

我的asp.net应用程序中有这个视图:

  <asp:UpdatePanel ID="C_Compte" runat="server" UpdateMode="Conditional">
                <ContentTemplate>
                    Métier: 
                <asp:TextBox ID="tbAddMetier" CssClass="Textboxes" Width="300px" Height="25px" runat="server"></asp:TextBox>
                    <asp:Button ID="btnAddMetier" runat="server" Text="Ajouter" CssClass="OffreEmploiSearch" OnClick="Button1_Click" />
                    <h4 style="font-weight: bold">Mes métiers</h4>
                    <asp:Repeater ID="rptrMetier" runat="server">
                        <ItemTemplate>
                            <div style="font: normal normal normal 14px/1.4em play, sans-serif; color: rgb(95, 94, 93); padding-left: 10px; line-height: 22px">

                                    <strong><%# Eval("Lebelle") %></strong></a>
                        <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Design_Ressources/img/attachment.png" OnCommand="ImageButton1_Command" CommandArgument='<%# Eval("Lebelle") %>' />

                            </div>
                        </ItemTemplate>
                    </asp:Repeater>
                </ContentTemplate>
            </asp:UpdatePanel>
背后的代码中的

 protected void ImageButton1_Command(object sender, CommandEventArgs e)
        {
            string newjob = e.CommandArgument.ToString().Split(',')[0];
        }

修改数据绑定

protected void Button1_Click(object sender, EventArgs e)
        {
            string newjob = tbAddMetier.Text;
            Metier m = new Metier { Lebelle = newjob };
            CurrentCandidat.Metier1.Add(m);
            try
            {
                notrecontexte.SaveChanges();
            }
            catch 
            {
            }
           tbAddMetier.Text = "";
            rptrMetier.DataSource = CurrentCandidat.Metier1;
            rptrMetier.DataBind();
            C_Compte.Update();
        }

我的问题是按钮clic事件永远不会被触发!!

  • 是什么原因?
  • 如何修复我的代码?

1 个答案:

答案 0 :(得分:1)

Button1 添加回发触发器,如下所述:

<asp:UpdatePanel ID="C_Compte" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        Métier: 
        <asp:TextBox ID="tbAddMetier" CssClass="Textboxes" Width="300px" Height="25px" runat="server"></asp:TextBox>
        <asp:Button ID="btnAddMetier" runat="server" Text="Ajouter" CssClass="OffreEmploiSearch" OnClick="Button1_Click" />
        <h4 style="font-weight: bold">Mes métiers</h4>
        <asp:Repeater ID="rptrMetier" runat="server">
            <ItemTemplate>
                <div style="font: normal normal normal 14px/1.4em play, sans-serif; color: rgb(95, 94, 93); padding-left: 10px; line-height: 22px">

                    <strong><%# Eval("Lebelle") %></strong></a>
                <asp:ImageButton ID="ImageButton1" runat="server" ImageUrl="~/Design_Ressources/img/attachment.png" OnCommand="ImageButton1_Command" CommandArgument='<%# Eval("Lebelle") %>' />

                </div>
            </ItemTemplate>
        </asp:Repeater>
    </ContentTemplate>
    <Triggers>
        <asp:PostBackTrigger ControlID="btnAddMetier"/>
    </Triggers>
</asp:UpdatePanel>