При привязке GridView к DataTable, Как мы можем изменить значение, отображаемое в BoundField

StackOverflow https://stackoverflow.com/questions/1063152

Вопрос

При привязке GridView к DataTable, Как мы можем изменить значение, отображаемое в BoundField

Это было полезно?

Решение

Один из способов выглядит примерно так:

<asp:CheckBox ID="CheckBox1" runat="server" 
Checked='<%# (((String)DataBinder.Eval(Container.DataItem, "Status")) == "O")?true:false %>' />

и тогда у вас есть контроль в коде, лежащем в основе, например:

protected void gvFiles_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        if (DataBinder.Eval(e.Row.DataItem, "LastUser").ToString() == "x")
        {
            TextBox txtId = gvFiles.FindControl("txtId") as TextBox;
            txtId.Text = "NA";
        }
    }

}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top