#c# #asp.net #.net #ado.net
#c# #asp.net #.net #ado.net
Вопрос:
Как я могу поместить все данные, которые находятся в строке в моем GridView, жирным шрифтом, если другой столбец этого GridView имеет значение «1», например?
Эти столбцы не могут быть видны пользователю. Я использую SqlDataSource для заполнения моего GridView
Ответ №1:
Вы могли бы:
- Используйте GridView.Событие RowDataBound для проверки данных, которые вы записываете в каждый столбец (в вашем случае вы должны проверить значение «1»).
- Если ваше условие выполнено, установите флаг.
- Как только флаг установлен, вы можете проверять его при записи каждой новой строки (опять же, используя событие, описанное выше). При написании строки, которую вы хотите выделить жирным шрифтом, установите флажок. Если флаг установлен, измените свойство CssClass объекта Row на класс, который вы создали в своей таблице стилей, который имеет
text-weight:bold
или похож.
Ответ №2:
Вы можете установить шрифт и другую информацию о стиле для каждой ячейки, которую вы можете получить с table.Rows[row].Cells[col]
помощью where row / col — ваши номера строк и столбцов.
Вот документация для TableCell
:
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.tablecell.aspx
Вы также должны иметь возможность устанавливать стили для каждой строки, используя GridViewRow
класс, представленный table.Rows
. Вот ссылка на статью MSDN для этого:
http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.gridviewrow.aspx
Ответ №3:
void myGrid_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (((myobject)e.Row.DataItem).myfield == "1")
{
e.Row.CssClass="myclass";
}
}
}