DataGrid应用技巧两则(downmoon)
一:增加求和列:
private
void
dgMeets_ItemDataBound(
object
sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if
(e.Item.ItemType
==
ListItemType.Item
||
e.Item.ItemType
==
ListItemType.Item)
{
//
某列总和
intTotalNew
=
0
;
int
i;
DataTable myTable;
myTable
=
(DataTable) ((DataSet)
this
.dgMeets.DataSource).Tables[
0
];
for
(i
=
0
;i
<
myTable.Rows.Count;i
++
)
{
intTotalNew
+=
int
.Parse(myTable.Rows[i][
"
attendnum
"
].ToString());
}
}
else
if
(e.Item.ItemType
==
ListItemType.Footer)
{
e.Item.Cells[
6
].Text
=
"
总计:
"
+
intTotalNew.ToString()
+
"
人
"
;
e.Item.Cells[
6
].Attributes.Add(
"
Align
"
,
"
Right
"
);
}
}
二:列字段转换:
方法1:
<
asp:TemplateColumn
HeaderText
="是否可见"
>
<
HeaderStyle
HorizontalAlign
="Center"
Width
="10%"
></
HeaderStyle
>
<
ItemStyle
HorizontalAlign
="Center"
></
ItemStyle
>
<
ItemTemplate
>
<
asp:Label
runat
="server"
ID
="lb"
Text
='<%#
((DataBinder.Eval(Container, "DataItem.Conf_show", "{0}"))
=="0")?"是":"<font
color
=red
>
否
</
font
>
" %>'> ' >
</
asp:Label
>
</
ItemTemplate
>
</
asp:TemplateColumn
>
方法2:
后台------------
public
string
ConvertToBool(
string
k)
{
string
s
=
(k
==
"
0
"
)
?
"
是
"
:
"
<font color=red>否</font>
"
;
return
s;
}
前台:
<
asp:TemplateColumn
HeaderText
="是否可见"
>
<
HeaderStyle
HorizontalAlign
="Center"
Width
="10%"
></
HeaderStyle
>
<
ItemStyle
HorizontalAlign
="Center"
></
ItemStyle
>
<
ItemTemplate
>
<
asp:Label
runat
="server"
ID
="lb"
Text
='<%#
ConvertToBool(DataBinder.Eval(Container, "DataItem.Conf_show", "{0}")) %
>
'> ' >
</
asp:Label
>
</
ItemTemplate
>
</
asp:TemplateColumn
>

博客介绍了DataGrid的两个应用技巧,一是增加求和列,二是列字段转换,还分别提及了方法1、方法2,以及后台和前台相关内容,聚焦信息技术中DataGrid的应用。
926

被折叠的 条评论
为什么被折叠?



