惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Y
Y Combinator Blog
T
Tailwind CSS Blog
G
Google Developers Blog
博客园 - Franky
Google DeepMind News
Google DeepMind News
阮一峰的网络日志
阮一峰的网络日志
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 聂微东
爱范儿
爱范儿
博客园 - 【当耐特】
腾讯CDC
T
The Blog of Author Tim Ferriss
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
C
Check Point Blog
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
博客园_首页
Stack Overflow Blog
Stack Overflow Blog
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

博客园 - boulder

asp.net 利用Cookie实现免登陆(c#) - boulder - 博客园 Md5Encode 算法 javascript浮动图片 - boulder - 博客园 导出Excel - boulder - 博客园 获取键盘的enter - boulder - 博客园 oracle 的float(b)转 oracle函数(关于处理小数点位数) char、varchar和varchar2的区别(转) - boulder - 博客园 生成验证码(转) - boulder - 博客园 ASP.NET 2.0利用Httphandler实现URL重写(伪URL及伪静态)(转) .net上传文件的限制 电话号码的验证表达式 GridView 在换页时保持CheckBox的选择 在DataList中找到控件 没有装Express版Sql Server 2005就不能用WebPart ? (转) form表单 input 通过查询系统表得到纵向的表结构 Codebehind CodeFile转 解决flash的虚框问题
自定义datatable
boulder · 2007-09-11 · via 博客园 - boulder

首先定义一个全局变量dataTable
 public DataTable dt
    {
        get { return (DataTable)ViewState["dt"]; }
        set { ViewState["dt"] = value; }
    }
在首次加载页面的时候创建表的列
   protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            DataTable dt1 = new DataTable();
            dt1.Columns.Add("Choose", typeof(string));
            dt1.Columns.Add("IsRight", typeof(string));
            dt1.Columns.Add("ID", typeof(string));
            dt = dt1;
            DataColumn[] dc = new DataColumn[1];
            dc[0] = dt.Columns["ID"];
            dt.PrimaryKey = dc;
        }
    }
点击button时添加记录
此时只是放在GridView1中,没有保存在数据库中
 protected void btnAdd_Click(object sender, EventArgs e)
    {
        DataRow dr = dt.NewRow();
        dr["Choose"] = txtChooseItem.Text;
        dr["IsRight"] = cbRightItem.Checked ? true : false;
        dr["ID"] = Guid.NewGuid().ToString();
        dt.Rows.Add(dr);
        dt.AcceptChanges();//这一句很重要,否则每次新增的纪录会覆盖久的纪录
        if (dt.Rows.Count != 0)
        {
            GridView1.DataSource = dt;
            ViewState["DataSource"] = dt;
            GridView1.DataBind();
        }
    }

posted on 2007-09-11 18:57  boulder  阅读(1711)  评论()    收藏  举报