我想更改GridView列值。 我创造了" Enum"将我的值以interger格式存储在数据库中。但是在展示Gridview时我想要显示" Enum"文字而不是价值观。 目前我在gridview列中显示Enum int值。 请帮我在gridview列中显示字符串
这是我显示gridview的代码。
public void BindData()
{
string selectSQL = "SELECT * FROM ClientInfo";
SqlConnection con = new SqlConnection(connectionString);
SqlDataAdapter da = new SqlDataAdapter(selectSQL, con);
DataSet ds = new DataSet();
da.Fill(ds, "ClientInfo");
GridView1.DataSource = ds.Tables["ClientInfo"].DefaultView;
GridView1.DataBind();
}
答案 0 :(得分:1)
我得到了答案。我们必须创建如下新功能:
protected void OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
TableCell statusCell = e.Row.Cells[6];
int value = Convert.ToInt32(statusCell.Text);
Flows flowTypeName = (Flows)Enum.ToObject(typeof(Flows), value);
statusCell.Text = flowTypeName.ToString();
}
}
&安培;我们必须在GridView中将该函数称为 OnRowDataBound =" OnRowDataBound"
它现在正常运作。