- 浏览: 63048 次
- 性别:
- 来自: 烟台
最新评论
GridView用法:
1、分页
属性:AllowPaging(设置是否允许分页) PageSize (设置每页的数量条数)。
GridView的PageIndexChanging事件
GridView1.PageIndex = e.NewPageIndex; //e是系统自定的
GrdBindData(); //重新绑定数据
2、删除数据(RowDeleting事件),修改数据(RowUpdating事件)
string CustomerID = GridView1.DataKeys[e.RowIndex].value.tostring();
DeleteCustomers(CustomerID);
/*如果是修改数据的话
如果不加上IsPostBack,取得的值是数据库中的字段,而不是GridView表格中TextBox的值,但如果加上IsPostBack就一切正常.
string CustomerID = GridView1.DataKeys[e.RowIndex][0].ToString();
string CompanyName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text;
string ContactName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
UpdateCustomers(CustomerID, CompanyName, ContactName, Address);
GridView1.EditIndex = -1;
*/
GrdBindData(); //重新绑定数据
3、进入编辑状态(RowEditing事件)
this.GridView1.EditIndex = e.NewEditIndex;
GrdBindData(); //重新绑定数据
4、终止编辑状态(RowCancelingEdit事件)
this.GridView1.EditIndex = -1;
GrdBindData(); //重新绑定数据
5、鼠标移到GridView某一行时改变该行的背景色的方法,添加行号的方法(RowDataBound事件)
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标停留时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00A9FF'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
////当有编辑列时,避免出错,要加的RowState判断
//if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
//{
// ((LinkButton)e.Row.Cells[3].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('您确定要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
//}
}
//添加行号,这时最好把前台的第一列的表头该为“编号”,因为以前的第一列被“吃掉”了。
if (e.Row.RowIndex != -1)
{
int id = e.Row.RowIndex + 1;
e.Row.Cells[0].Text = id.ToString();
}
6、GridView实现用“...”代替超长字符串 方法:数据绑定后过滤每一行即可
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
string gIntro;
if (GridView1.PageIndex == 0)
{
DataTable vDt = SqlHelper.GetDataTable();
gIntro = Convert.ToString(vDt.Rows[i][2]);//所要处理的字段
GridView1.Rows[i].Cells[3].Text = SubStr(gIntro, 2);
}
//截取字符的方法
public string SubStr(string sString, int nLeng)
{
if (sString.Length <= nLeng)
{
return sString;
}
string sNewStr = sString.Substring(0, nLeng);
sNewStr = sNewStr + "...";
return sNewStr;
}
7、每行添加Checkbox,添加模板列即可
<asp:TemplateField>
<HeaderTemplate>选择</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
8、全选的checkbox的CheckedChanged事件
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (CheckBox2.Checked == true)
{
cbox.Checked = true;
}
else
{
cbox.Checked = false;
}
}
9、删除所选的Button的onclick事件
int vNum=0;
using (SqlConnection conn = new SqlConnection(SqlConnStr))
{
conn.Open();
for (int i = 0; i < GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (cbox.Checked == true)
{
DelSelect(Convert.ToInt32(GridView1.DataKeys[i].Value));
vNum++;
}
}
}
GridDataBind();
ClientScript.RegisterStartupScript(this.GetType(), "", string.Format("<script language='javascript' type='text/javascript'>alert('删除了{0}条记录');</script>", vNum));
10、在winform中gridview改了个名字叫DataGridview,绘制行号的方法如下:
private void gvdata_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
Convert.ToInt32(e.RowBounds.Location.Y + (e.RowBounds.Height - gvdata.RowHeadersDefaultCellStyle.Font.Size) / 2),
gvdata.RowHeadersWidth - 4, e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(),
gvdata.RowHeadersDefaultCellStyle.Font, rectangle, gvdata.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.Right);
}
11、gridview空数据时 也显示列头
<asp:GridView ID="GridView1" runat="server" >
<EmptyDataTemplate>
<table>
<tr>
<th>Id</th>
<th>Name</th>
<th>Department</th>
</tr>
<tr>
<td colspan="3">
对不起,没有找到任何相关记录
</td>
</tr>
</table>
</EmptyDataTemplate>
<Columns>
<asp:TemplateField>
<HeaderTemplate>ID</HeaderTemplate>
<ItemTemplate><%#eval_r("Id") %></ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Name</HeaderTemplate>
<ItemTemplate><%#eval_r("Name") %></ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate> Department</HeaderTemplate>
<ItemTemplate><%#eval_r("Department") %></ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
1、分页
属性:AllowPaging(设置是否允许分页) PageSize (设置每页的数量条数)。
GridView的PageIndexChanging事件
GridView1.PageIndex = e.NewPageIndex; //e是系统自定的
GrdBindData(); //重新绑定数据
2、删除数据(RowDeleting事件),修改数据(RowUpdating事件)
string CustomerID = GridView1.DataKeys[e.RowIndex].value.tostring();
DeleteCustomers(CustomerID);
/*如果是修改数据的话
如果不加上IsPostBack,取得的值是数据库中的字段,而不是GridView表格中TextBox的值,但如果加上IsPostBack就一切正常.
string CustomerID = GridView1.DataKeys[e.RowIndex][0].ToString();
string CompanyName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[0].Controls[0]).Text;
string ContactName = ((TextBox)GridView1.Rows[e.RowIndex].Cells[1].Controls[0]).Text;
UpdateCustomers(CustomerID, CompanyName, ContactName, Address);
GridView1.EditIndex = -1;
*/
GrdBindData(); //重新绑定数据
3、进入编辑状态(RowEditing事件)
this.GridView1.EditIndex = e.NewEditIndex;
GrdBindData(); //重新绑定数据
4、终止编辑状态(RowCancelingEdit事件)
this.GridView1.EditIndex = -1;
GrdBindData(); //重新绑定数据
5、鼠标移到GridView某一行时改变该行的背景色的方法,添加行号的方法(RowDataBound事件)
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标停留时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#00A9FF'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
////当有编辑列时,避免出错,要加的RowState判断
//if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
//{
// ((LinkButton)e.Row.Cells[3].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('您确定要删除:\"" + e.Row.Cells[1].Text + "\"吗?')");
//}
}
//添加行号,这时最好把前台的第一列的表头该为“编号”,因为以前的第一列被“吃掉”了。
if (e.Row.RowIndex != -1)
{
int id = e.Row.RowIndex + 1;
e.Row.Cells[0].Text = id.ToString();
}
6、GridView实现用“...”代替超长字符串 方法:数据绑定后过滤每一行即可
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
string gIntro;
if (GridView1.PageIndex == 0)
{
DataTable vDt = SqlHelper.GetDataTable();
gIntro = Convert.ToString(vDt.Rows[i][2]);//所要处理的字段
GridView1.Rows[i].Cells[3].Text = SubStr(gIntro, 2);
}
//截取字符的方法
public string SubStr(string sString, int nLeng)
{
if (sString.Length <= nLeng)
{
return sString;
}
string sNewStr = sString.Substring(0, nLeng);
sNewStr = sNewStr + "...";
return sNewStr;
}
7、每行添加Checkbox,添加模板列即可
<asp:TemplateField>
<HeaderTemplate>选择</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server" />
</ItemTemplate>
</asp:TemplateField>
8、全选的checkbox的CheckedChanged事件
for (int i = 0; i <= GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (CheckBox2.Checked == true)
{
cbox.Checked = true;
}
else
{
cbox.Checked = false;
}
}
9、删除所选的Button的onclick事件
int vNum=0;
using (SqlConnection conn = new SqlConnection(SqlConnStr))
{
conn.Open();
for (int i = 0; i < GridView1.Rows.Count - 1; i++)
{
CheckBox cbox = (CheckBox)GridView1.Rows[i].FindControl("CheckBox1");
if (cbox.Checked == true)
{
DelSelect(Convert.ToInt32(GridView1.DataKeys[i].Value));
vNum++;
}
}
}
GridDataBind();
ClientScript.RegisterStartupScript(this.GetType(), "", string.Format("<script language='javascript' type='text/javascript'>alert('删除了{0}条记录');</script>", vNum));
10、在winform中gridview改了个名字叫DataGridview,绘制行号的方法如下:
private void gvdata_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e)
{
Rectangle rectangle = new Rectangle(e.RowBounds.Location.X,
Convert.ToInt32(e.RowBounds.Location.Y + (e.RowBounds.Height - gvdata.RowHeadersDefaultCellStyle.Font.Size) / 2),
gvdata.RowHeadersWidth - 4, e.RowBounds.Height);
TextRenderer.DrawText(e.Graphics, (e.RowIndex + 1).ToString(),
gvdata.RowHeadersDefaultCellStyle.Font, rectangle, gvdata.RowHeadersDefaultCellStyle.ForeColor,
TextFormatFlags.Right);
}
11、gridview空数据时 也显示列头
<asp:GridView ID="GridView1" runat="server" >
<EmptyDataTemplate>
<table>
<tr>
<th>Id</th>
<th>Name</th>
<th>Department</th>
</tr>
<tr>
<td colspan="3">
对不起,没有找到任何相关记录
</td>
</tr>
</table>
</EmptyDataTemplate>
<Columns>
<asp:TemplateField>
<HeaderTemplate>ID</HeaderTemplate>
<ItemTemplate><%#eval_r("Id") %></ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate>Name</HeaderTemplate>
<ItemTemplate><%#eval_r("Name") %></ItemTemplate>
</asp:TemplateField>
<asp:TemplateField>
<HeaderTemplate> Department</HeaderTemplate>
<ItemTemplate><%#eval_r("Department") %></ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
发表评论
-
控件的使用
2011-12-31 18:49 6301、AdRotator控件用法 <asp:AdRotat ... -
常用的简单算法
2011-11-17 20:38 790用二重循环实现冒泡排序 1 如何用二重循环将5个数字排序?N ... -
状态管理
2011-10-31 22:06 748内置对象方法 信息量大小 作用 ... -
现在免费的.Net空间越来越少了,我发现了个空间大,而且完全免费的
2011-10-30 12:33 10云空间-全面进入免费云时代-国内首家免费T级云空间! 云空间- ... -
Asp.Net小技巧合集
2011-09-15 18:33 78920120122 小雪 在google中找免费的电子书籍 搜索 ... -
根据数据库现有数据生成单号
2011-08-01 22:45 902/// <summary> /// ... -
FreeTextBox控件的用法
2011-08-01 22:42 1113下载网址:http://freetextbox.com/def ... -
RSS读取文章
2011-08-01 22:37 1065/// <summary> /// 加载R ... -
C#中发送Email
2011-08-01 22:29 1079// 引入命名空间 using System.Net; usi ... -
Treeview控件的用法
2011-07-31 22:30 2001//treeview控件的用法,据我现在看,以下方法在winf ... -
数据库读取和保存图片
2011-07-31 20:49 921//从数据库读取图片,并保存为11.jpg using (Sq ... -
绘制饼图
2011-07-31 20:38 606using System.Drawing; public pa ... -
WebGrid用法
2011-07-31 12:15 5211首先安装Infragistics.NetAdv ... -
封装的上传文件的方法
2011-03-19 18:24 1080//上传按钮 protected void Butt ... -
IO操作
2011-03-19 18:22 6681、創建目錄,支持多級,根據輸入的目錄地址 Director ... -
彈出提示框
2011-03-19 18:19 9331、Response.Write(“<script la ... -
report service研究
2011-03-19 18:19 989報表服務器 Overwritedatasources ... -
Asp.net通用方法及属性
2011-03-19 17:57 7921. 在ASP.NET中专用属性: 获取服务器计算机名:P ... -
C#读写注册表操作类
2011-03-19 17:48 1244using System; using System.Coll ... -
保存DataTable的数据
2011-03-19 17:47 2212在botton的click事件中定义datatable,当cl ...
相关推荐
Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview用法大全Gridview...
### GridView使用方法详解 #### 1. GridView无代码分页排序 在ASP.NET中,`GridView` 控件是非常强大的一个工具,它可以帮助我们快速地显示、排序和分页数据库中的数据。下面详细介绍如何实现无代码分页排序: - *...
本篇文章将详细阐述GridView的使用方法,包括基本配置、数据绑定、事件处理、自定义样式以及一些高级特性。 首先,GridView的基本配置涉及控件的初始化和属性设置。在ASP.NET页面的HTML部分,我们需要声明一个...
### Gridview用法大总结 #### 一、概述 Gridview是ASP.NET中一个非常重要的控件,用于显示和管理数据库中的数据。它提供了一种简单直观的方式来展示数据,并允许用户进行各种操作如排序、分页等。Gridview的强大之...
这个"GridView 用法 DEMO"应该是包含了一个实例,演示了如何在Android应用中使用GridView进行数据展示、添加、删除和修改操作。下面我们将深入探讨GridView的基本概念、功能以及如何在实践中运用。 ### 1. GridView...
### GridView用法大合集 #### 1. 数据绑定并实现分页功能 **1.1 GridView控件数据绑定与分页技术有关属性与事件** - **AllowPaging**: 获取或设置一个布尔值,该值指示是否启用GridView控件的分页功能。如果设置...
本教程将详细讲解Android中的GridView及其使用方法。 1. GridView简介: GridView继承自ViewGroup,它会把子视图按照指定的列数进行排列,形成一个可滚动的网格视图。每个子视图可以是ImageView、TextView或其他...
这篇文档将深入讲解GridView的使用方法,包括基本配置、数据绑定、自定义适配器、事件处理等方面。 一、GridView的基本使用 1. 布局文件配置:在XML布局文件中,我们需要添加GridView标签,并设置其属性。例如,`...
在这个“GridView 用法详解”中,我们将深入探讨如何有效地利用GridView来构建功能丰富的用户界面。 1. ** GridView的基本概念** GridView是一个二维的布局管理器,它将子视图(Views)按照行列的方式排列。每个子...
在本篇中,我们将深入探讨Java GridView的使用方法,特别针对Android平台。 1. **GridView的布局** 在Android开发中,GridView是`android.widget.GridView`类的一部分。首先,我们需要在XML布局文件中添加GridView...
以下是对标题和描述中提到的GridView用法的详细总结: 1. **无后台代码的增删改查**:通过在GridView中配置`InsertItemTemplate`、`EditItemTemplate`和`CommandField`,用户可以直接在前端进行数据的添加、删除和...
2. 动态数据绑定:在Page_Load事件中,使用DataSource属性和DataBind()方法手动绑定数据。 四、模板字段(TemplateField) TemplateField允许自定义列的显示内容,可以插入HTML、控件或者其他模板。这在需要显示...