zoukankan      html  css  js  c++  java
  • GridView常见问题及解决办法

    1.GirdView自动显示编辑模式,设置AutoGenerateEditButton="true"

    2.GirdView编辑,更新,取消方法

    protected void Edit_Click(object sender, GridViewEditEventArgs e)
    {
    this.gvData.EditIndex = e.NewEditIndex;
    DateBind();
    }

    protected void gvData_RowUpdating(object sender, GridViewUpdateEventArgs e)
    {
    TextBox tb1 = (TextBox)gvData.Rows[e.RowIndex].FindControl("txtUserCount");
    string count = tb1.Text;
    gvData.EditIndex = -1;

    //重新绑定数据,必须重新绑
    DateBind();
    }

    protected void gvData_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
    {
    gvData.EditIndex = -1;
    DateBind();
    }

    设计状态代码:

    <asp:GridView RowStyle-Wrap="false" runat="server" ShowHeader="true" OnRowEditing="Edit_Click"
    AutoGenerateColumns="False" ID="gvData" Width="98%"
    GridLines="Both" BorderWidth="1px" EnableModelValidation="false"
    CellPadding="4" AutoGenerateEditButton="true"
    onrowcancelingedit="gvData_RowCancelingEdit" onrowupdating="gvData_RowUpdating">
    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
    <Columns>
    <asp:TemplateField HeaderText="医院名称">
    <ItemTemplate>
    <asp:Label ID="lblHospitalName" runat="server" Text='<%# Eval("HospitalName") %>'></asp:Label>
    </ItemTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="产品型号">
    <ItemTemplate>
    <asp:Label ID="lblproductType" runat="server" Text='<%# Eval("productType") %>'></asp:Label>
    </ItemTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="使用数量">
    <ItemTemplate>
    <asp:Label runat="server" ID="lblUserCount" Text='<%#Eval("Count") %>'></asp:Label> </ItemTemplate>
    <EditItemTemplate>
    <asp:TextBox ID="txtUserCount" runat="server" Text='<%#Bind("Count") %>'></asp:TextBox>
    </EditItemTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="注备">
    <ItemTemplate>
    <asp:Label runat="server" ID="lblStorageRemark" Text='<%#Eval("StorageRemark") %>'></asp:Label>
    </ItemTemplate>
    <EditItemTemplate>
    <asp:TextBox ID="txtStorageRemark" runat="server" Text='<%#Bind("StorageRemark") %>'></asp:TextBox>
    </EditItemTemplate>
    </asp:TemplateField>
    </Columns>

    <RowStyle Wrap="False" HorizontalAlign="Center" VerticalAlign="Middle"></RowStyle>
    <PagerStyle BackColor="#d22238" ForeColor="White" HorizontalAlign="Center" Font-Bold="True" />
    <HeaderStyle BackColor="#E5E5E5" Font-Bold="True"/>
    <AlternatingRowStyle BackColor="White" />
    </asp:GridView>

    3.gridview编辑列时要点击两次才能触发事件

    因为你点击第一次的时候系统又去查询,把查询的结果放在了ds里面而没有呈现在页面上来!当一第二次点的时候才是取的ds里面有效的数据,重新绑定数据就没事了,一次点击就成功了
  • 相关阅读:
    linux拷贝软连接文件
    【知识点】Java常用类库
    Maven之pom.xml配置文件详解
    Java+Bigdata学习路线
    Hadoop界的Hello World!
    JavaEE三大框架的整合
    学完微型服务器(Tomcat)对其工作流程的理解,自己着手写个简单的tomcat
    【数据结构与算法】之链表
    JavaEE项目开发所需要的包(Struts2+Spring5+Hibernate5)
    在Linux(Centos7)系统上对进行Hadoop分布式配置以及运行Hadoop伪分布式实例
  • 原文地址:https://www.cnblogs.com/GreenGrass/p/2663225.html
Copyright © 2011-2022 走看看