Использование ASP.NET GridView FindControl () на BoundField для управления полем

Я работаю со старым приложением, в котором были жестко закодированные столбцы для разных местоположений, теперь, когда добавляются новые местоположения, я решил попробовать и заставить их заполняться динамически. Одной из функций приложения было отображение красного и полужирного текста, когда статус считался «плохим». Это было выполнено с помощью функции «FindControl ()» из ячеек в выбранной строке с помощью TemplateFields.

Теперь, когда я настроил это на использование связанного поля, как мне изменить цвет текста, размер , так далее. во время события DataBound?

BoundField добавляется в GridView

        BoundField statusField = new BoundField();
        statusField.DataField = "ExceptionStatusCode";
        statusField.HeaderText = "Status";
        statusField.SortExpression = "ExceptionStatusCode";
        this.gvView.Columns.Add(statusField);

Событие DataBound для GridView

    protected void gvView_DataBound(object sender, EventArgs e)
    {
        foreach (GridViewRow row in this.gvView.Rows)
        {
            //NO LONGER WORKS, NEED TO KNOW HOW TO REPRODUCE
            //WHAT IS BELOW FOR BOUND FIELD
            Label lblPartStatus = ((Label) row.Cells[StatusColumn].FindControl("lblPartStatus"));
            if (lblPartStatus.Text == "BAD")
            {
                lblPartStatus.ForeColor = System.Drawing.Color.Red;
                row.ToolTip = "One or more locations is missing information!";
                row.BackColor = System.Drawing.Color.Salmon;
            }
        }
    }
5
задан RSolberg 21 July 2011 в 08:27
поделиться