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

推荐订阅源

Attack and Defense Labs
Attack and Defense Labs
The GitHub Blog
The GitHub Blog
C
Check Point Blog
博客园_首页
MongoDB | Blog
MongoDB | Blog
N
Netflix TechBlog - Medium
F
Full Disclosure
Microsoft Security Blog
Microsoft Security Blog
爱范儿
爱范儿
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
G
GRAHAM CLULEY
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
C
Cybersecurity and Infrastructure Security Agency CISA
V
Vulnerabilities – Threatpost
K
Kaspersky official blog
博客园 - 司徒正美
S
Schneier on Security
T
The Exploit Database - CXSecurity.com
Project Zero
Project Zero
云风的 BLOG
云风的 BLOG
Cisco Talos Blog
Cisco Talos Blog
Know Your Adversary
Know Your Adversary
雷峰网
雷峰网
V
V2EX - 技术
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Spread Privacy
Spread Privacy
罗磊的独立博客
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
S
Security Affairs
SecWiki News
SecWiki News
Schneier on Security
Schneier on Security
O
OpenAI News
Jina AI
Jina AI
PCI Perspectives
PCI Perspectives
Cyberwarzone
Cyberwarzone
Y
Y Combinator Blog
Apple Machine Learning Research
Apple Machine Learning Research
B
Blog RSS Feed
I
InfoQ
D
Docker
P
Palo Alto Networks Blog
Recorded Future
Recorded Future
M
MIT News - Artificial intelligence
博客园 - Franky
B
Blog
Scott Helme
Scott Helme
博客园 - 叶小钗
D
DataBreaches.Net

博客园 - 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)  评论()    收藏  举报