【问题标题】:Click GridView link And Send The Value To A TextBox?单击 GridView 链接并将值发送到文本框?
【发布时间】:2017-08-30 23:20:57
【问题描述】:

我是 ASP.net 开发的新手。我想问一下单击我的gridview中的链接后如何将数据从grid view控件显示到文本框控件。请注意下面的代码以获取链接。另外我不想使用自动生成选择按钮,因为显示默认为“选择”而不是我数据库中的真实数据。

  <asp:TemplateField HeaderText="ID">
                    <ItemTemplate>
                        <asp:LinkButton ID="lnkView" runat="server" OnClick="lnkView_click" DataTextField="ID" SortExpression="ID"  CommandArgument='<%# Eval("ID")%>'> 
                        </asp:LinkButton>
                    </ItemTemplate>
                </asp:TemplateField>

【问题讨论】:

  • 您想将什么数据传递给文本框控件?它是与链接按钮来自同一行的列数据吗?

标签: asp.net gridview asplinkbutton


【解决方案1】:
 <ItemTemplate>
 <asp:LinkButton ID="HyperLinkIns" runat="server"
 OnClientClick='<%# GetUrl(Convert.ToString(Eval("id"))) %>'
 Text='<%# Shorten(Eval("id"),5,30) %>' ToolTip='<%# Eval("id") %>'>
  </asp:LinkButton>
  </ItemTemplate>  

Cs:

protected string GetClientsHistoryUrl(string id)
{     
    return "javascript:window.open('http:// --- id=" + iinbin.ToString() + "','_blank','status= no, resizable= yes, scrollbars=yes, toolbar=no,location=no,menubar=no ')";
}

【讨论】:

    【解决方案2】:

    尝试使用ItemCommand 事件,然后将CommandName 放在like 按钮中。 请看下面的代码:

    <asp:TemplateField HeaderText="ID">
        <ItemTemplate>
            <asp:LinkButton ID="lnkView" runat="server" OnClick="lnkView_click" DataTextField="ID" SortExpression="ID" CommandName="something"  CommandArgument='<%# Eval("ID")%>'> 
                        </asp:LinkButton>
        </ItemTemplate>
    </asp:TemplateField>
    

    然后在gridview ItemCommand 事件中使用

    protected void Gridview1_ItemCommand(object sender, GridViewCommandEventArgs e)
    {
        if(e.CommandName == "something")
        {
            Textboxid.text = "some text";
        }
    }
    

    【讨论】:

      【解决方案3】:
       protected void lbtAddNew_Click(object sender, EventArgs e) 
          {
              try {
                  LinkButton lbt = (sender as LinkButton);
                  GridViewRow gr=(lbt.NamingContainer as GridViewRow);
                  txtbox1.text=gr.Cells[1].Text;
               }
              catch (Exception ex) { }
          }
      

      在上面的代码中,gr 拥有特定行的所有列数据。这样您就可以将文本绑定到文本框控件

      【讨论】:

        猜你喜欢
        • 2014-12-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-13
        • 2021-01-27
        • 1970-01-01
        相关资源
        最近更新 更多