如何在asp.net数据网格中重命名具有if条件的绑定行元素
本文关键字:if 条件 元素 绑定 重命名 asp net 数据 网格 数据网 | 更新日期: 2023-09-27 18:08:36
我在asp.net .net框架4中工作,我有一个数据网格,它有一个列值1,2,3等,我想在与if条件绑定期间重命名它们,例如,如果值为1显示YES,如果值为2,显示NO,就像那样…我知道网格有一个事件数据绑定,但我不知道如何在此事件中根据条件改变单元格的值,请帮助。
谢谢爱迪
-
使用条件内联在
.aspx
:<%# ((int)Eval("Property")) == 0 ? "No" : "Yes" %>
-
使用at codebehind方法来格式化value:
是
<%# FormatMyValue(Container.DataItem) %>
cs
public string FormatMyValue(object value) { return ((MyDataType)value).Property == 0 ? "No" : "Yes"; }
-
在代码隐藏中使用
RowDataBound
事件(不优雅,但应该可以工作):protected void Page_Load(object sender, EventArgs e) { this.GridView1.RowDataBound += new GridViewRowEventHandler(GridView1_RowDataBound); } void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { // get date item MyDataType item = (MyDataType)e.Row.DataItem; // Set value in the necessary cell. You need to specify correct cell index. e.Row.Cells[1].Text = item.Property == 0 ? "No" : "Yes"; ; } }