zoukankan
html css js c++ java
DataGrid的多种格式化显示方法
//
1.用<%# DataBinder.Eval(Container.DataItem,"MaritalStatus").ToString()=="1"?"已婚":"未婚" %>方式显示
//
2.用sql中的case Gender when 1 then '男' else '女' end显示
//
3.在后台写方法,前台调用显示,如Format(object item,string type)
//
4.DataGrid1_ItemDataBound
1.html
<
HTML
>
<
HEAD
>
<
title
>
GridFormat
</
title
>
<
meta
content
="Microsoft Visual Studio .NET 7.1"
name
="GENERATOR"
>
<
meta
content
="C#"
name
="CODE_LANGUAGE"
>
<
meta
content
="JavaScript"
name
="vs_defaultClientScript"
>
<
meta
content
="http://schemas.microsoft.com/intellisense/ie5"
name
="vs_targetSchema"
>
</
HEAD
>
<
body
MS_POSITIONING
="GridLayout"
>
<
form
id
="Form1"
method
="post"
runat
="server"
>
<
asp:datagrid
id
="DataGrid1"
style
="Z-INDEX: 101; LEFT: 8px; POSITION: absolute; TOP: 16px"
runat
="server"
AutoGenerateColumns
="False"
BorderColor
="#CC9966"
BorderStyle
="None"
BorderWidth
="1px"
BackColor
="White"
CellPadding
="4"
>
<
FooterStyle
ForeColor
="#330099"
BackColor
="#FFFFCC"
></
FooterStyle
>
<
SelectedItemStyle
Font-Bold
="True"
ForeColor
="#663399"
BackColor
="#FFCC66"
></
SelectedItemStyle
>
<
ItemStyle
ForeColor
="#330099"
BackColor
="White"
></
ItemStyle
>
<
HeaderStyle
Font-Bold
="True"
ForeColor
="#FFFFCC"
BackColor
="#990000"
></
HeaderStyle
>
<
Columns
>
<
asp:TemplateColumn
HeaderText
="ID"
>
<
ItemTemplate
>
<%
# DataBinder.Eval(Container.DataItem,
"
UserID
"
)
%>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="学位"
>
<
ItemTemplate
>
<%
# Format(Container.DataItem,
"
Degree
"
)
%>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="性别"
>
<
ItemTemplate
>
<%
# DataBinder.Eval(Container.DataItem,
"
Gender
"
)
%>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="婚姻状况"
>
<
ItemTemplate
>
<%
# DataBinder.Eval(Container.DataItem,
"
MaritalStatus
"
).ToString()
==
"
1
"
?
"
已婚
"
:
"
未婚
"
%>
</
ItemTemplate
>
</
asp:TemplateColumn
>
<
asp:TemplateColumn
HeaderText
="描述"
>
<
ItemTemplate
>
<%
# DataBinder.Eval(Container.DataItem,
"
Description
"
)
%>
</
ItemTemplate
>
</
asp:TemplateColumn
>
</
Columns
>
<
PagerStyle
HorizontalAlign
="Center"
ForeColor
="#330099"
BackColor
="#FFFFCC"
></
PagerStyle
>
</
asp:datagrid
></
form
>
</
body
>
</
HTML
>
2.cs代码
public
class
GridFormat : System.Web.UI.Page
{
protected
System.Web.UI.WebControls.DataGrid DataGrid1;
private
void
Page_Load(
object
sender, System.EventArgs e)
{
//
1.用<%# DataBinder.Eval(Container.DataItem,"MaritalStatus").ToString()=="1"?"已婚":"未婚" %>方式显示
//
2.用sql中的case Gender when 1 then '男' else '女' end显示
//
3.在后台写方法,前台调用显示,如Format(object item,string type)
//
4.DataGrid1_ItemDataBound
DataBind();
for
(
int
i
=
0
; i
<
DataGrid1.Items.Count; i
++
)
{
if
(DataGrid1.Items[i].Cells[
2
].Text
==
"
男
"
)
{
DataGrid1.Items[i].Cells[
2
].ForeColor
=
System.Drawing.Color.Red;
}
}
}
GetDataSet
#region
GetDataSet
private
DataSet GetDataSet(
string
sql)
{
string
constring
=
System.Configuration.ConfigurationSettings.AppSettings[
"
ConnectionString
"
];
SqlDataAdapter sda
=
new
SqlDataAdapter(sql,constring);
DataSet ds
=
new
DataSet();
sda.Fill(ds);
return
ds;
}
#endregion
DataBind
#region
DataBind
private
void
DataBind()
{
string
sql
=
"
select UserID,Degree,Gender =case Gender when 1 then '男' else '女' end,MaritalStatus,Description from formatgrid
"
;
DataSet ds
=
GetDataSet(sql);
this
.DataGrid1.DataSource
=
ds;
this
.DataGrid1.DataBind();
}
#endregion
Format
#region
Format
protected
string
Format(
object
item,
string
type)
{
DataRowView drv
=
(DataRowView)item;
string
val
=
string
.Empty;
switch
(drv[
"
Degree
"
].ToString().ToLower())
{
case
"
1
"
:
val
=
"
博士后
"
;
break
;
case
"
2
"
:
val
=
"
博士
"
;
break
;
case
"
3
"
:
val
=
"
硕士
"
;
break
;
case
"
4
"
:
val
=
"
学士
"
;
break
;
default
:
val
=
drv[
"
Degree
"
].ToString();
break
;
}
return
val;
}
#endregion
Web Form Designer generated code
#region
Web Form Designer generated code
override
protected
void
OnInit(EventArgs e)
{
//
//
CODEGEN: This call is required by the ASP.NET Web Form Designer.
//
InitializeComponent();
base
.OnInit(e);
this
.DataGrid1.ItemDataBound
+=
new
DataGridItemEventHandler(DataGrid1_ItemDataBound);
}
/**/
/**/
/**/
/**/
/**/
/**/
/**/
///
<summary>
///
Required method for Designer support - do not modify
///
the contents of this method with the code editor.
///
</summary>
private
void
InitializeComponent()
{
this
.Load
+=
new
System.EventHandler(
this
.Page_Load);
}
#endregion
DataGrid1_ItemDataBound
#region
DataGrid1_ItemDataBound
private
void
DataGrid1_ItemDataBound(
object
sender, DataGridItemEventArgs e)
{
if
(e.Item.ItemType
!=
ListItemType.Header)
{
string
subject
=
Convert.ToString(DataBinder.Eval(e.Item.DataItem,
"
Description
"
));
if
(subject.Length
>
10
)
{
subject
=
subject.Substring(
0
,
10
)
+
""
;
}
e.Item.Cells[
4
].Text
=
subject;
}
if
(e.Item.ItemType
!=
ListItemType.Header)
{
e.Item.Cells[
1
].Attributes.Add(
"
onmouseover
"
,
"
this.style.color='Red';this.style.cursor='hand'
"
);
e.Item.Cells[
1
].Attributes.Add(
"
onmouseout
"
,
"
this.style.color='Black';this.style.cursor='default'
"
);
}
}
#endregion
}
3.数据库教本
if
exists
(
select
*
from
dbo.sysobjects
where
id
=
object_id
(N
'
[dbo].[FormatGrid]
'
)
and
OBJECTPROPERTY
(id, N
'
IsUserTable
'
)
=
1
)
drop
table
[
dbo
]
.
[
FormatGrid
]
GO
CREATE
TABLE
[
dbo
]
.
[
FormatGrid
]
(
[
UserID
]
[
int
]
NULL
,
[
Degree
]
[
int
]
NULL
,
[
Gender
]
[
int
]
NULL
,
[
MaritalStatus
]
[
int
]
NULL
,
[
Description
]
[
nvarchar
]
(
500
) COLLATE Chinese_PRC_CI_AS
NULL
)
ON
[
PRIMARY
]
GO
--
测试数据
insert
into
FormatGrid(UserID,Degree,Gender,MaritalStatus,Description)
values
(
1
,
1
,
1
,
0
,
'
可以读取流。读取是从流到数据结构(如字节数组)的数据传输。
'
)
insert
into
FormatGrid(UserID,Degree,Gender,MaritalStatus,Description)
values
(
2
,
2
,
0
,
1
,
'
可以写入流。写入是从数据结构到流的数据传输。
'
)
insert
into
FormatGrid(UserID,Degree,Gender,MaritalStatus,Description)
values
(
3
,
3
,
1
,
0
,
'
流可以支持查找。查找是对流内的当前位置进行查询和修改。查找功能取决于流具有的后备存储区类型。例如,网络流没有当前位置的统一概念,因此一般不支持查找。
'
)
insert
into
FormatGrid(UserID,Degree,Gender,MaritalStatus,Description)
values
(
4
,
4
,
0
,
1
,
'
小山哥
'
)
insert
into
FormatGrid(UserID,Degree,Gender,MaritalStatus,Description)
values
(
5
,
5
,
1
,
0
,
'
山哥
'
)
查看全文
相关阅读:
C# 工厂
sql server 数据库 数据DateTime 转mysql
java 快捷工具,如何清理不需要的引用
动态调用webservice 接口
动态调用wcf接口服务
下载图片出现问题
jQuery Validation Engine 表单验证
mvc5 知识点01
mvc5 @RenderSection("scripts", required: false) 什么意思
mvc5 _ViewStart.cshtml 模板页如何定义
原文地址:https://www.cnblogs.com/Fooo/p/407827.html
最新文章
JSP技术---9大隐式对象
Npc50C [贪心]
选址 [差分]
飘雪圣域 [树状数组(二维偏序)]
玩具 [奇妙树形dp/计数]
石子 [SG函数+倍增优化dp+高精+FWT]
P2827 蚯蚓 [单调性]
P1437 [HNOI2004]敲砖块 [dp]
长链剖分学习笔记 + [Vijos] lxhgww的奇思妙想 + CF1009F Dominant Indices [长链剖分]
伟大的航线 [set / 代码待补]
热门文章
51nod1885 区间和2 [二分+尺取]
mysql连接踩坑
vue-parcel打包入门
将window上的项目上传到自己的github
dependencies与devDependencies的区别
Select2下拉框总结
easyUI---分页插件
jauery-layer弹出框的使用
ajax请求-IE缓存处理
表格--使用
Copyright © 2011-2022 走看看