Если вы посмотрите на источник адаптера CSS-Friendly для GridView, который указан в вашей ссылке, вы увидите следующее (обратите внимание на отсутствующий else ):
private void WriteRows(HtmlTextWriter writer, GridView gridView, GridViewRowCollection rows, string tableSection)
{
if (rows.Count > 0)
{
В основном адаптер не упоминает EmptyDataTemplate или EmptyDataText - это просто упущение. Исправить это просто, хотя. Все, что вам нужно сделать, это взять предоставленный источник, посмотреть, как его отображает исходный GridView, объединить концепции и перестроить оригинальный адаптер:
case DataControlRowType.EmptyDataRow:
if (this._emptyDataTemplate == null)
{
container = new TableCell();
string emptyDataText = this.EmptyDataText;
if (emptyDataText.Length > 0)
{
container.Text = emptyDataText;
}
break;
}
container = new TableCell();
template = this._emptyDataTemplate;
break;
}
if (container != null)
{
if (columnSpan > 1)
{
container.ColumnSpan = columnSpan;
}
if (template != null)
{
template.InstantiateIn(container);
}
row.Cells.Add(container);
}