LinkBut​​ton OnCommand未在用户控件中调用

时间:2010-11-09 22:31:07

标签: asp.net

在我的usercontrol中,我有一个包含来自数据库的一些数据的转发器。这是项目模板

<ItemTemplate>
            <tr>
                <td class="tblCell">
                    <a href="Document.aspx?docId=<%# Eval("DOCID") %>" target="_blank">
                        <%# Eval("FILENAME") %></a>
                </td>
                <td class="tblCell">
                <asp:Label ID="_empty" runat="server" />
                    <asp:LinkButton ID="_lnkDelete" runat="server" OnCommand="LinkDelete_Click" CommandArgument='<%# Eval("DOCID") %>' Text="Delete" OnClientClick="return confirm('Delete this Document?')" />
                </td>
            </tr>
        </ItemTemplate>

Repeater显示文件列表,每个文件名都有自己的删除按钮。但是,删除按钮在单击时不会调用OnCommand事件。它只是回帖。

protected void LinkDelete_Click(object sender, CommandEventArgs e)
{
    MyObject _myObj = new MyObject(Convert.ToInt64(e.CommandArgument));
    _myObj.Deleted = "Y";
    _myObj.Update();
    DeleteFile(_myObj.Filename);
    GetFileInfo();
}

在用户控件中以这种方式使用LinkBut​​ton是否有问题?如果是这样,是否有一些解决方法?或问题是显而易见的,我只是没有看到它?

由于

1 个答案:

答案 0 :(得分:0)

您忘记定义CommandName。在您的情况下delete是合适的。

编辑:您应该在Repeater的OnItemCommand中抓住它。