GridView基本应用
GridView有很多技巧,但是常用的不多,这些基本技巧必须达到手写的熟练程度.
其他技巧都以此为基础.
1.设置AutoGenerateColumns为false
2.boundfield设置只读,则处于编辑状态时,不变为编辑框.
只读字段的取值方法.
<asp:boundfield DataField="userid" HeaderText="编号" ReadOnly="True" />
string id = gv_base.Rows[e.RowIndex].Cells[0].Text;
非只读字段的取值方法.
<asp:boundfield DataField="username" HeaderText="用户名" />
string uname = ((TextBox)gv_base.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
注意:编辑,更新,取消属性一列即Columns[3].Controls[0]或[1]或[2]
3.控制列的显示隐藏
if (gv_base.Columns[5].Visible == false)
gv_base.Columns[5].Visible = true;
else
gv_base.Columns[5].Visible = false;
4.commandfield
不管编辑,更新,取消,都需要重新绑定.
注意点编辑时也需要重新绑定.
意义:给GridView标记了要编辑的行,然后绑定时,到了那一行,就会显示编辑模板.
5.设置主键 DataKeyNames="userid"
取值方法
string key = gv_base.DataKeys[e.RowIndex].Value.ToString();
多个主键时的设置和取值方法
设置
DataKeyNames="userid,username"
取值
string key = gv_base.DataKeys[e.RowIndex].Values[0].ToString();
string key1 = gv_base.DataKeys[e.RowIndex].Values[1].ToString();
6.删除操作的特殊性,由于所有列都处于只读状态,所以可以全部用此法取值.
string id = gv_base.Rows[e.RowIndex].Cells[0].Text;
string uname = gv_base.Rows[e.RowIndex].Cells[1].Text;
7.为删除按钮添加js函数
private void Bind()
{
gv_base.DataSource = OleDbHelper.ExecuteDt("select * from userinfo");
gv_base.DataBind();
for (int i = 0; i < gv_base.Rows.Count; i++)
{
((LinkButton)(gv_base.Rows[i].Cells[4].Controls[0])).Attributes.Add
("onclick", "javascript:if(confirm('确定删除?')!=1){return false}");
}
}
问题,这段代码不管放在Page_Load还是Bind()里均会出现问题,就是进入编辑状态后,列号改变了.
似乎应该放在DataBound里?
8.链接列的应用
<asp:hyperlinkfield DataNavigateUrlFields="userid,power"
DataNavigateUrlFormatString="Detail.aspx?id={0}&power={1}"
HeaderText="详情" Target="_blank" Text="详细内容" />
9.问题
进入编辑状态时,删除按钮找不到了.
10.分页原理,别忘了,设置AllowPaging="True"
protected void gv_base_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
gv_base.PageIndex = e.NewPageIndex;
Bind();
Response.Write("第" + e.NewPageIndex + "页,共" + gv_base.PageCount + "页");
}
把这段代码可以放在其他函数,比如一个按钮事件里.
gv_base.PageIndex = 1;
Bind();
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
Repeater DataList GridView的嵌套用法,论坛上有很多人想知道嵌套的用法。我总结了这三种控件的嵌套,以供参考。http://blog.csdn.net/greatverve/archive/2008/12/25/3600912.aspx我的网址:www.0379zd.com
资源推荐
资源详情
资源评论
收起资源包目录
Nesting.rar (29个子文件)
Nesting
GridView_Study.sln 2KB
GridView_Study
Default.aspx 651B
test
Default.aspx 2KB
Default2.aspx.cs 688B
js_history.htm 250B
new_page.htm 413B
js_cs.aspx 849B
js_cs.aspx.cs 411B
Default2.aspx 1KB
Default.aspx.cs 1017B
App_Code
OleDbHelper.cs 7KB
App_Data
ClothesShop.mdb 720KB
nesting
dlistNesting.aspx 2KB
rptNesting.aspx 2KB
dlistNesting.aspx.cs 1KB
rptNesting.aspx.cs 1KB
gviewNesting.aspx.cs 1017B
gviewNesting.aspx 2KB
baseuse
Default.aspx 2KB
基本应用.txt 3KB
ChkBox.aspx 2KB
Detail.aspx.cs 981B
ChkBox.aspx.cs 2KB
Detail.aspx 621B
Default.aspx.cs 2KB
Web.Config 2KB
嵌套的用法.txt 75B
Default.aspx.cs 2KB
GridView_Study.suo 21KB
共 29 条
- 1
greatverve
- 粉丝: 586
- 资源: 101
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页