Отсутствует вертикальная граница слева от заголовка в asp: Gridview

#c# #asp.net #gridview #border

#c# #asp.net #gridview #граница

Вопрос:

У меня есть asp: gridview с заголовком и подкачкой, но мне интересно, что вертикальная граница слева от заголовка отсутствует, как показано на изображении ниже (она находится слева от строки «Postnummer»):
введите описание изображения здесь

Как видно, отсутствует только эта небольшая часть gridview — все остальные границы работают правильно.

Объявление gridview выглядит следующим образом:

     <asp:GridView ID="gvPost" AutoGenerateColumns="False"
        EnableViewState="true"
        EmptyDataText="Listen er tom!" runat="server" CellPadding="4"
        ForeColor="#333333" Font-Size="Small" AutoPostBack="True"
        CssClass="Gridview"
        DataKeyNames="Postnummer"
        DataSourceID="odsRecords"
        AllowPaging="true"
        OnPageIndexChanging="gvPost_PageIndexChanging"
        AllowSorting="True"
        PageSize="50" GridLines="Both"
        ShowFooter="false" OnRowDataBound="gvPost_RowDataBound">
 

Итак, что я могу сделать, чтобы показать эту часть вертикальной границы?

Я надеюсь, что кто-нибудь может дать мне подсказку.
Заранее спасибо
, Майкл

Ответ №1:

вы должны сделать это в фоновом режиме, как показано ниже

 protected void gvPost_RowDataBound(object sender, GridViewRowEventArgs e)
{
     foreach (TableCell tc in e.Row.Cells)
     {
         tc.Attributes["style"] = "border-color: #000000";
     }
}
 

Комментарии:

1. Спасибо за ответ 🙂 Но он заполняет границу вокруг каждого заголовка — так что я могу сделать, чтобы выбрать только крайнюю левую вертикальную границу?

2. Спасибо — вы привели меня к ответу 🙂

Ответ №2:

Решение заключается в следующем:

         protected void gvPost_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.Header)
            {
                e.Row.Cells[0].Style.Add("border-left-color", "#000000");
            }
        }