首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DetailsView事件的问题

DetailsView事件的问题
EN

Stack Overflow用户
提问于 2011-07-18 04:55:37
回答 1查看 221关注 0票数 0

我有一个带有按钮链接的列表,当单击按钮列表时,此事件将被触发:

代码语言:javascript
复制
    protected void DetailsView1_ItemCommand(object sender, DetailsViewCommandEventArgs e)
{
    DetailsView dv = (DetailsView)sender;
    LinkButton linkbtn = (LinkButton)dv.FindControl("LinkButton3");
    string threadID = e.CommandArgument.ToString();
    string threadName = linkbtn.Text;
      Server.Transfer("~/AnswerQuestion.aspx?x=" + threadID+"&question=" + threadName + "&time=" + DateTime.Now);

}

标记LinkButton。

代码语言:javascript
复制
   <ItemTemplate >
            <asp:LinkButton ID="LinkButton3" runat="server" Text=<%# Eval("ThreadTitle") %> CommandName="Select" CommandArgument=<%# Eval("ThreadsID") %>>LinkButton</asp:LinkButton>
         </ItemTemplate>

问题是,我允许分页too..so当某个页面被点击时,Detailsview1_ItemCommand被触发(例如,如果我们在页面1,页面2被点击,那么事件被触发)。

我希望通过包装Server.Transfer语句来防止这种情况发生,并创建一个条件,声明单击的是buttonLink而不是寻呼机……(我无法转换sender..cause,我得到了DetailsView)

有没有可能..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-18 05:21:21

您已经为LinkButton指定了一个CommandName,为什么不使用它呢?

代码语言:javascript
复制
if(e.CommandName == "Select")
{
   //Do something
} 

顺便说一句,如果这个LinkButton除了转移到另一个页面之外不执行任何服务器操作,那么在这里使用简单的锚标记可能会更好。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6726708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档