我的GridView使用以下数据绑定语法来绑定数据。 我希望在它真正绑定到GridView之前进行数据转换。例如,如果VendorID int属性(我使用List作为数据源)为0,我希望在该字段上显示空字符串。 我可以利用什么样的事件?如果您可以建议任何代码示例?
非常感谢。
<asp:TemplateField HeaderText="Vendor ID">
<ItemStyle Width="1%" BorderColor="#efefef" BorderWidth="1px" />
<ItemTemplate>
<asp:Label runat="server" ID="lblNo" Text='<%# Bind("VendorID") %>'></asp:Label>
</ItemTemplate>
<HeaderStyle BorderColor="#efefef" />
</asp:TemplateField>
答案 0 :(得分:1)
Gridview RowDataBound事件可用于此。
void GridView1_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
// do wat ever u like to do here.
// formating, checking, changing data, etc....
e.Row.Cells[1].Text = "<i>" + e.Row.Cells[1].Text + "</i>";
}
}
答案 1 :(得分:1)
您可以在 RowDataboundEvent
中使用以下代码 if (DataBinder.Eval(args.Row.DataItem, "VendorID").ToString() == "0")
{
((Label)args.Row.FindControl("lblNo")).Text = "";
}
else
{
((Label)args.Row.FindControl("lblNo")).Text = DataBinder.Eval(args.Row.DataItem, "VendorID").ToString();
}