グリッドビュー - タグ「EmptyDataText」を中央に配置し、ページのデフォルトの左側に配置しないようにします
-
05-07-2019 - |
質問
C# プログラムに Gridview コントロールがあります。基本的に、誰かが電子メール アドレスを入力すると、データがグリッドビューに表示されますが、電子メール アドレスのデータが見つからなかった場合は、EmptyDataText="no data available" タグを使用してメッセージが表示されますが、テキストのスタイルを設定できないようです。利用可能なデータがありません」と表示されるため、デフォルトの左側ではなくページの中央に表示されます。CSS は機能しているようですが、フォントのサイズと種類は変更できますが、text-align:center は変更できません。
さまざまなオプションを試してみました。
<EmptyDataRowStyle Font-Size="12px" text-align="center" />
問題は、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 = "中央" EmptyDataRowStyle タグに追加しますか?また、スキンは使用していますか?
他のヒント
cssコードのセレクターは次のようになります:
tr.mycentertext td {text-align:center; font-size:12px; font-family:Verdana; }
する必要があるのは、グリッドビューに CssClass =&quot; myGrid
を追加し、その&quot; myGrid&quot;に追加するだけですスタイルを追加する必要があります margin:0 auto
そしてそれはemptydataメッセージを中央に揃えます。