zoukankan      html  css  js  c++  java
  • GridView ItemCommand

    GridView ItemCommand中取某行某列的值方法,这里提供两个常用的:

    一、用CommandArgument属性取值页面如下:

     <asp:TemplateColumn HeaderText="图片名称">
        <ItemTemplate>    
         <asp:LinkButton ID="btnDownload" runat="server" CommandName="Download" CommandArgument='<%# Eval("IMG_SAVE_NAME") %>' ><%# Eval("IMG_NAME")%></asp:LinkButton>
    
         <asp:TextBox  ID="Text1" runat="server"></asp:TextBox>
        </ItemTemplate>
       </asp:TemplateColumn>
    前台代码

      后台: 

    if (e.CommandName == "Download")
            {
                string strFilePath =  e.CommandArgument.ToString();
                /// 获取控件的值
         string text=(e.item.findControl("Text1") as TextBox).Text
            }
    后台代码

     注意:用e.item.findControl时,只能获取ItemTemplate模板内控件值,如果是EditItemTemplate是获取不到的。

    二、

    在绑定GridView时增加DataKeyField

    this.gvMain.DataSource = ds.Tables[0];
    this.gvMain.DataKeyField = "IMG_NAME";
    this.gvMain.DataBind();

    然后在ItemCommand中获取

    if (e.CommandName == "Download")
            {        
                string strFileName = gvMain.DataKeys[e.Item.ItemIndex].ToString();    
            }

     

  • 相关阅读:
    错题
    URL和URI区别
    适配器
    JAVA 反射机制
    JAVA 面试题
    JAVA 继承
    多态 JAVA
    Java面向对象编辑
    [LeetCode] Merge k Sorted Lists
    [LeetCode] Valid Palindrome
  • 原文地址:https://www.cnblogs.com/xbding/p/3254477.html
Copyright © 2011-2022 走看看