GridView认识(一)
导读:
一、显示数据
- a、通过代码绑定显示数据
- b、通过数据源控件绑定显示数据
二、外观控制
- a、整体外观控制
- b、列表行的控制
- c、列表列的控制
内容:
一、显示数据
(一)代码绑定:
优势:可以灵活的选择要显示的内容
var query = _Context.Info;
GridView1.DataSource = query;
GridView1.DataBind();
(二)数据源控件绑定:SqlDataSource,LinQDataSource,ObjectDataSource..
法一、控件GridView 中 选择数据源----新建数据源---可以选择sql、linq(注:必须提前已经添加完毕linq 类) 等数据源,添加完毕后 设计界面会直接添加对应的数据源控件;
法二、添加GrideView 控件后,在 工具 --数据---选择对应数据源(LInqDataSouce 、SqlDataSouce) 等--- 在数据源控件中添加数据,添加完毕数据后--在 GrideView 控件的选择数据源选项中选择要显示的数据源;
注意: 在添加数据源的过程中,可以操作对应控件,来显示不同的效果;
二、外观控制
(一)控制表格整体外观
1.自动套用样式:
添加格式:GridView右上角的智能菜单--“自动套用格式”
删除格式:GridView右上角的智能菜单--“移除套用格式”
2.手动设置样式:
GridView属性中的“外观”和“样式”类别的属性来调整整体外观的风格。
特例:
样式---HeaderStyle 表头样式
FooterStyle 脚注样式
HorizontaAlign 单元格内容水平对齐(无、左、中、右)
VerticalAligin 单元格垂直对齐(无、上、中、下)
Wrap 单元格内容自动换行
AlternatingRowStyle 交替行样式
(二)控制列
Columns属性或右上角的智能菜单中的“编辑列”来实现
在“编辑列”的对话框中,设置列的类型和属性。
特例:HeaderText 设置表头(姓名、性别、生日、出生日期)
DataField 此列中绑定的字段名称
DataFormatString 应用于此列的数据显示格式
{ {0:yyyy年MM月dd 日} 、{0}同志---> 大飞同志 }
****通过 Linq 绑定数据的可以通过 扩展属性来 解决 性别 以及民族等 外联表的显示;
public string nationname
{
get
{
return this.Nation1.Name;
}
(三)控制行
GridView的生成过程:逐行创建,逐行绑定。
创建完成后会触发:RowCreated事件
绑定完成后会触发:RowDataBound事件。
以后主要使用的事件是RowDataBound,很少使用RowCreated
RowDataBound事件:
例如:非汉族的人员绿色显示,男生整行加粗。
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
//取数据
Info data = e.Row.DataItem as Info;
//改外观
if (data.Sex.Value == true)
{
e.Row.Font.Bold = true;
}
if (data.Nation != "n001")
{
e.Row.Cells[3].ForeColor = System.Drawing.Color.Green;
}
}
}
类似的应用有:
1.仓库存货量少于100,就加红变粗进行报警。
2.消息或邮件,未读就加粗显示。
3.新闻或招聘的hot显示
4.论坛中不同阅读量的贴子的颜色和加粗不同。