Gridview - выровнять по центру тег 'EmptyDataText' & amp; так что это не по умолчанию слева от страницы
-
05-07-2019 - |
Вопрос
У меня есть элемент управления gridview в моей программе на c #. Обычно кто-то вводит адрес электронной почты, и затем данные отображаются в сетке, но если с адресом электронной почты не может быть найдено никаких данных, сообщение отображается с использованием EmptyDataText = " данные недоступны " тег, но я, кажется, не могу стилизовать текст «нет данных», поэтому он отображается в центре страницы, а не по умолчанию слева. Хотя CSS работает, я могу изменить размер и тип шрифта, но не text-align: center.
Я пробовал несколько разных вариантов:
<EmptyDataRowStyle Font-Size="12px" text-align="center" />
Проблема в выравнивании текста: центр не является допустимым атрибутом.
Другой вариант был:
<EmptyDataRowStyle cssclass="mycentertext" />
А затем я делаю ссылку на свой файл style.css и помещаю в него:
.mycentertext {text-align: center;font-size: 12px;font-family: Verdana;}
Опять же, размер шрифта изменяется и тип шрифта, но все еще не выровнен.
Пожалуйста, помогите!
Это мой вид сетки:
<asp:GridView ID="GridView1" Visible="false" runat="server" AutoGenerateColumns="False" DataKeyNames="ID"
DataSourceID="SqlDataSource" EmptyDataText="No data could be found for the email address" CellSpacing="3" CellPadding="4"
GridLines="None" ForeColor="#333333">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" InsertVisible="False" ReadOnly="True"
SortExpression="ID">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
<asp:BoundField DataField="name" HeaderText="Name" SortExpression="name">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
<asp:BoundField DataField="EmailAddress" HeaderText="Email Address" SortExpression="EmailAddress">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
<asp:BoundField DataField="Address1" HeaderText="Address1" SortExpression="Address1">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
<asp:BoundField DataField="Address2" HeaderText="Address2" SortExpression="Address2">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
<asp:BoundField DataField="city" HeaderText="City" SortExpression="city">
<ItemStyle Font-Names="Verdana" Font-Size="9pt" />
<HeaderStyle Font-Names="Verdana" Font-Size="10pt" />
</asp:BoundField>
</Columns>
<RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
<FooterStyle BackColor="#5D7B9D" ForeColor="White" Font-Bold="True" />
<PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
<SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
<HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
<AlternatingRowStyle BackColor="White" ForeColor="#284775" />
<EditRowStyle BackColor="#999999" />
<EmptyDataRowStyle cssclass="mycentertext" />
</asp:GridView>
Решение
Что произойдет, если вы добавите HorizontalAlign = " Center " в тег EmptyDataRowStyle? Кроме того, вы вообще используете скины?
Другие советы
Ваш селектор в коде css должен быть следующим:
tr.mycentertext td {text-align: center; размер шрифта: 12px; семейство шрифтов: Verdana; } Р>
Все, что вам нужно сделать, это добавить в представление сетки CssClass = " myGrid
и в этом " myGrid " стиль, вы должны добавить margin: 0 auto
, и это выровняет сообщение emptydata по центру.