您的位置:首页 > 其它

DataGrid应用技巧两则(downmoon)---列求和与列字段转换d

2005-08-09 14:38 609 查看
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
>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: