【问题标题】:ItemCommand in repeater in ASP.netASP.net 中中继器中的 ItemCommand
【发布时间】:2015-08-11 12:16:06
【问题描述】:

我想单击转发器中一行中的超链接,它将导航到另一个页面 请让我知道如何在 ASP.net repeater 控件中使用 ItemCommand

<asp:Repeater ID="rpMeetings" runat="server" DataSourceID="odsMeetings">   <ItemTemplate>
<li class="list-group-item">
<h4><asp:HyperLink ID="HyperLink1" runat="server" DataNavigateUrlFields="MeetingID" DataNavigateUrlFormatString="Forms/Meeting.aspx?meetingID={0}"
  Text='<%# Eval("Title") %>'></asp:HyperLink></h4>
   <p class="pull-right">Status: <strong>'<%# Eval("Status") %>'</strong></p>
   <p><strong>Date:</strong> '<%# Eval("FinalDecidedTime") %>'<strong>Time:</strong>  - Organized by: '<%# Eval("Organizer") %>'</p>
     </li>
</ItemTemplate>
</asp:Repeater> 

【问题讨论】:

  • 你有没有尝试过任何事情并检查上面的代码是否有任何错误??
  • 除非我遗漏了什么,否则您不需要 ItemCommand。只需将 MeetingID 附加到标记中的 NavigateUrl 即可。
  • MeetingID 是动态的 我更改了我的代码如下,但仍然没有导航

标签: c# asp.net navigation itemcommand data-controls


【解决方案1】:

使用带有命令名称和参数的链接按钮而不是超链接来解决问题

  <asp:LinkButton ID="lbtnMeetingTitle" runat="server" CommandArgument='<%# Eval("MeetingID") %>' CommandName="Open" Text='<%# Eval("Title") %>'></asp:LinkButton></h4>

在后面的代码中

    protected void rpMeetings_ItemCommand(object source, RepeaterCommandEventArgs e)
{
    Response.Redirect("~/Forms/Meeting.aspx?meetingID=" + Int32.Parse(e.CommandArgument.ToString()));
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多