Gridview - alignez au centre la balise 'EmptyDataText' & amp; donc ce n'est pas la gauche par défaut de la page
-
05-07-2019 - |
Question
J'ai un contrôle gridview dans mon programme c #. En gros, une personne saisit une adresse électronique et les données sont ensuite affichées dans la grille. Toutefois, si aucune adresse ne peut être trouvée avec l'adresse électronique, un message s'affiche à l'aide de la propriété EmptyDataText = "aucune donnée disponible". balise mais je n'arrive pas à styler le texte "pas de données disponibles", il apparaît donc au centre de la page plutôt que la valeur par défaut à gauche. Bien que le CSS semble fonctionner, je peux changer la taille et le type de police, mais pas text-align: center.
J'ai essayé différentes options:
<EmptyDataRowStyle Font-Size="12px" text-align="center" />
Le problème est que text-align: center n'est pas un attribut valide.
Une autre option était:
<EmptyDataRowStyle cssclass="mycentertext" />
Et puis je fais un lien vers mon fichier style.css et place dans celui-ci:
.mycentertext {text-align: center;font-size: 12px;font-family: Verdana;}
Encore une fois, la taille de la police et le type de police ne sont toujours pas alignés.
S'il vous plaît, aidez!
Ceci est mon gridview:
<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>
La solution
Que se passe-t-il si vous ajoutez HorizontalAlign = "Centre" à la balise EmptyDataRowStyle? De plus, utilisez-vous des peaux?
Autres conseils
Votre sélecteur dans le code CSS devrait être:
tr.mycentertext td {text-align: center; taille de la police: 12px; police de la famille: Verdana; }
Tout ce que vous avez à faire est d’ajouter à la vue en grille un CssClass = "myGrid
" et dans le champ "myGrid". style, vous devez ajouter margin: 0 auto
pour aligner le message emptydata sur le centre.