• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    viewstate和datatable动态录入数据示例

    复制代码 代码如下:

    %@ Page Language="C#" EnableViewState="true" %>
    %@ Import Namespace="System.Data" %>
    !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    script runat="server">
      private DataTable stoveTable = null;
      protected void Page_Load(object sender, EventArgs e)
      {
        if (!Page.IsPostBack)
        {
          //创建 EmptyDataTemplate
          this.GridView_list.DataBind();
        }
      }

      protected void GridView_list_RowDataBound(object sender, GridViewRowEventArgs e)
      {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
          String usage = DataBinder.Eval(e.Row.DataItem, "usage").ToString();
          String steelKind = DataBinder.Eval(e.Row.DataItem, "steelKind").ToString();
          String castingTon = DataBinder.Eval(e.Row.DataItem, "castingTon").ToString();
          DropDownList x1 = e.Row.FindControl("x1") as DropDownList;
          DropDownList x2 = e.Row.FindControl("x2") as DropDownList;
          TextBox x3 = e.Row.FindControl("x3") as TextBox;
          x3.Text = castingTon;
          ListItem xx1 = x1.Items.FindByValue(usage);
          if (xx1 != null) xx1.Selected = true;
          ListItem xx2 = x2.Items.FindByValue(steelKind);
          if (xx2 != null) xx2.Selected = true;
        }
      }

      protected void LinkButton1_Click(object sender, EventArgs e)
      {
        DropDownList x1, x2;
        TextBox x3;
        if (GridView_list.Rows.Count == 0)
        {
          x1 = GridView_list.Controls[0].Controls[0].FindControl("x1") as DropDownList;
          x2 = GridView_list.Controls[0].Controls[0].FindControl("x2") as DropDownList;
          x3 = GridView_list.Controls[0].Controls[0].FindControl("x3") as TextBox;
        }
        else
        {
          GridViewRow r = GridView_list.FooterRow;
          x1 = r.FindControl("x1") as DropDownList;
          x2 = r.FindControl("x2") as DropDownList;
          x3 = r.FindControl("x3") as TextBox;
        }
        if (ViewState["dt"] == null)
        {
          stoveTable = new DataTable();
          stoveTable.Columns.Add("usage", typeof(String));
          stoveTable.Columns.Add("steelKind", typeof(String));
          stoveTable.Columns.Add("castingTon", typeof(String));
        }
        else
        {
          stoveTable = (DataTable)ViewState["dt"];
        }
        DataRow newRow = stoveTable.NewRow();
        newRow["usage"] = x1.SelectedValue;
        newRow["steelKind"] = x2.SelectedValue;
        newRow["castingTon"] = x3.Text;
        stoveTable.Rows.Add(newRow);

        ViewState["dt"] = stoveTable;
        this.GridView_list.DataSource = stoveTable;
        this.GridView_list.DataBind();

      }
      protected void LinkButton2_Click(object sender, EventArgs e)
      {
        if (ViewState["dt"] == null)
        {
          return;
        }
        stoveTable = (DataTable)ViewState["dt"];
        if (stoveTable.Rows.Count 1) return;
        stoveTable.Rows.RemoveAt(stoveTable.Rows.Count - 1);
        ViewState["dt"] = stoveTable;
        this.GridView_list.DataSource = stoveTable;
        this.GridView_list.DataBind();
      }

      protected void x1_SelectedIndexChanged(object sender, EventArgs e)
      {
        DropDownList x1 = sender as DropDownList;
        GridViewRow r = x1.Parent.Parent as GridViewRow;
        if (ViewState["dt"] == null)
        {
          Response.Write("Error");
          return;
        }
        stoveTable = (DataTable)ViewState["dt"];
        stoveTable.Rows[r.RowIndex]["usage"] = x1.SelectedValue;
        ViewState["dt"] = stoveTable;
        this.GridView_list.DataSource = stoveTable;
        this.GridView_list.DataBind();
      }

      protected void x2_SelectedIndexChanged(object sender, EventArgs e)
      {
        DropDownList x2 = sender as DropDownList;
        GridViewRow r = x2.Parent.Parent as GridViewRow;
        if (ViewState["dt"] == null)
        {
          Response.Write("Error");
          return;
        }
        stoveTable = (DataTable)ViewState["dt"];
        stoveTable.Rows[r.RowIndex]["steelKind"] = x2.SelectedValue;
        ViewState["dt"] = stoveTable;
        this.GridView_list.DataSource = stoveTable;
        this.GridView_list.DataBind();
      }

      protected void x3_TextChanged(object sender, EventArgs e)
      {

        TextBox x3 = sender as TextBox;
        GridViewRow r = x3.Parent.Parent as GridViewRow;
        if (ViewState["dt"] == null)
        {
          Response.Write("Error");
          return;
        }
        stoveTable = (DataTable)ViewState["dt"];
        stoveTable.Rows[r.RowIndex]["castingTon"] = x3.Text;
        ViewState["dt"] = stoveTable;
        this.GridView_list.DataSource = stoveTable;
        this.GridView_list.DataBind();
      }
    /script>
    html xmlns="http://www.w3.org/1999/xhtml">
    head id="Head1" runat="server">
      title>/title>
    /head>
    body>
      form id="form1" runat="server">
      asp:GridView ID="GridView_list" runat="server" ShowFooter="true" AutoGenerateColumns="false"
        OnRowDataBound="GridView_list_RowDataBound">
        EmptyDataTemplate>
          table style="border-collapse: collapse; width: 100%" cellspacing="0" rules="all"
            border="1">
            tr>
              th scope="col">
                选择1
              /th>
              th scope="col">
                选择2
              /th>
              th scope="col">
                输入文字
              /th>
            /tr>
            tr>td>
              asp:DropDownList ID="x1" runat="server">
                asp:ListItem>L0/asp:ListItem>
                asp:ListItem>L1/asp:ListItem>
                asp:ListItem>L2/asp:ListItem>
                asp:ListItem>L3/asp:ListItem>
              /asp:DropDownList>
            /td>td>
              asp:DropDownList ID="x2" runat="server">
                asp:ListItem>10#/asp:ListItem>
                asp:ListItem>20#/asp:ListItem>
                asp:ListItem>30#/asp:ListItem>
                asp:ListItem>40#/asp:ListItem>
              /asp:DropDownList>
            /td>td>
              asp:TextBox ID="x3" runat="server">/asp:TextBox>
            /td>/tr>
          /table>
        /EmptyDataTemplate>
        Columns>
          asp:TemplateField HeaderText="选择1">
            ItemTemplate>
              asp:DropDownList ID="x1" runat="server" AutoPostBack="true" OnSelectedIndexChanged="x1_SelectedIndexChanged">
                asp:ListItem>L0/asp:ListItem>
                asp:ListItem>L1/asp:ListItem>
                asp:ListItem>L2/asp:ListItem>
                asp:ListItem>L3/asp:ListItem>
              /asp:DropDownList>
            /ItemTemplate>
            FooterTemplate>
              asp:DropDownList ID="x1" runat="server">
                asp:ListItem>L0/asp:ListItem>
                asp:ListItem>L1/asp:ListItem>
                asp:ListItem>L2/asp:ListItem>
                asp:ListItem>L3/asp:ListItem>
              /asp:DropDownList>
            /FooterTemplate>
          /asp:TemplateField>
          asp:TemplateField HeaderText="选择2">
            ItemTemplate>
              asp:DropDownList ID="x2" runat="server" AutoPostBack="true" OnSelectedIndexChanged="x2_SelectedIndexChanged">
                asp:ListItem>10#/asp:ListItem>
                asp:ListItem>20#/asp:ListItem>
                asp:ListItem>30#/asp:ListItem>
                asp:ListItem>40#/asp:ListItem>
              /asp:DropDownList>
            /ItemTemplate>
            FooterTemplate>
              asp:DropDownList ID="x2" runat="server">
                asp:ListItem>10#/asp:ListItem>
                asp:ListItem>20#/asp:ListItem>
                asp:ListItem>30#/asp:ListItem>
                asp:ListItem>40#/asp:ListItem>
              /asp:DropDownList>
            /FooterTemplate>
          /asp:TemplateField>
          asp:TemplateField HeaderText="输入文字">
            ItemTemplate>
              asp:TextBox ID="x3" runat="server" AutoPostBack="true" OnTextChanged="x3_TextChanged">/asp:TextBox>
            /ItemTemplate>
            FooterTemplate>
              asp:TextBox ID="x3" runat="server">/asp:TextBox>
            /FooterTemplate>
          /asp:TemplateField>
        /Columns>
      /asp:GridView>
      asp:LinkButton ID="LinkButton1" runat="server" Text="添加内容" OnClick="LinkButton1_Click">/asp:LinkButton>
      asp:LinkButton ID="LinkButton2" runat="server" Text="删除内容" OnClick="LinkButton2_Click">/asp:LinkButton>
      /form>
    /body>
    /html>

    您可能感兴趣的文章:
    • asp.net 生成静态时的过滤viewstate的实现方法
    • asp.net 去除viewstate
    • asp.net 禁用viewstate在web.config里
    • asp.net viewstate 回发机制
    • asp.net生成静态后冗余代码,去掉viewstate生成的代码
    • 使用正则Regex来移除网页的EnableViewState实现思路及代码
    • 状态保存机制之ViewState概述及应用
    • 禁止ViewState的3种解决方法
    • asp.net中ViewState的用法详解
    • ASP.NET中控件的EnableViewState属性及彻底禁用
    上一篇:.net的socket异步通讯示例分享
    下一篇:asp.net获取网站绝对路径示例
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    viewstate和datatable动态录入数据示例 viewstate,和,datatable,动态,