#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");
}
}