c# - ASP :Button is not calling server-side function

标签 c# asp.net

我正在通过模板字段在数据绑定(bind)的 asp:GridView 中实例化一个 asp:Button。有些按钮应该调用服务器端函数,但由于某些奇怪的原因,它没有。当您单击它们时,所有按钮都会触发回传到当前页面,什么都不做,实际上只是重新加载页面。

下面是代码片段:

<asp:GridView ID="gv" runat="server" AutoGenerateColumns="false" CssClass="l2 submissions" ShowHeader="false">
    <Columns>      

        <asp:TemplateField>            
            <ItemTemplate><asp:Panel ID="swatchpanel" CssClass='<%# Bind("status") %>' runat="server"></asp:Panel></ItemTemplate>                
            <ItemStyle Width="50px" CssClass="sw" />
        </asp:TemplateField>

        <asp:BoundField DataField="description" ReadOnly="true">                                
        </asp:BoundField>

        <asp:BoundField DataField="owner" ReadOnly="true">
            <ItemStyle Font-Italic="true" />
        </asp:BoundField>

        <asp:BoundField DataField="last-modified" ReadOnly="true">
            <ItemStyle Width="100px" />
        </asp:BoundField>

        <asp:TemplateField>
            <ItemTemplate>
                <asp:Button ID="viewBtn" cssclass='<%# Bind("sid") %>' runat="server" Text="View" OnClick="viewBtnClick" />
            </ItemTemplate>
        </asp:TemplateField>                                         

    </Columns>
</asp:GridView>

上面的 viewBtn 应该在服务器端调用 viewBtnClick() 函数。我确实定义了该函数以及适当的签名(对象,EventArgs)。可能需要注意的一件事是,这段代码实际上在一个 ASCX 中,它在另一个 ASCX 中加载,最后加载到一个 ASPX 中。

任何帮助或对此事的见解将不胜感激。谢谢!

(哦,请不要介意我无用的 HTML/CSS 语义 - 这仍处于非常非常早期的阶段:p)

最佳答案

AutoWireupEvents 是否设置为 true?

关于c# - ASP :Button is not calling server-side function,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2723327/

相关文章:

javascript - 选中复选框后如何插入今天的日期?

c# - 缓存时间描述的最佳方式

asp.net - 文件下载不适用于 IE7

asp.net - 跨平台字符串加密

c# - 在触发 CancelKeyPress 事件之前,如何保持控制台打开?

c# - 为什么我不能使用 XmlSerializer 序列化只读字段?

c# - 如何摆脱 .Net C# 中的 ffmpeg.exe 黑色终端?

mysql - 将字符串值插入日期时间列

c# - 子进程和父进程之间共享值

c# - string[].Foreach() 中的 T[] 参数