7

我正在使用 ASP 数据网格我正在绑定数据字段,标题文本通过后面的代码(c#)动态绑定。

我还在动态设置列的样式,所有都工作正常,但是 Column Horizo​​ntal-align.Center 之一不起作用。

我检查了样式是否被覆盖,但它不是......

这是给出问题的代码块:

        BoundField field4 = new BoundField();
        field4.DataField = dtdata.Tables[0].Columns["data"].ToString();
        field4.HeaderText = "Percentage%";
        field4.DataFormatString = "{0:N1}%";
        field4.SortExpression = "data";
        field4.ItemStyle.HorizontalAlign = HorizontalAlign.Center;
        grdMarginGrid.Columns.Add(field4);

任何人都可以帮助我认识到问题出在哪里..

在此先感谢,迪维亚。

4

3 回答 3

16

我认为你的其他风格会压倒你的新风格。

你可以做这样的事情

尝试从您的 ASPX 代码向您的 gridview 添加一个 CSS 类,并将以下样式分配给您的类。

 <asp:GridView CssClass="grid" runat="server">
    <!-- your options -->
 </asp:GridView>

.grid td, .grid th{
  text-align:center;
}

您也可以从后面的代码中添加 CSS 类.. MSDN LINK

这会将所有列文本设置为网格视图的中心

于 2013-01-31T12:05:52.373 回答
4

为绑定字段或模板字段等任何字段提供 ItemStyle-Horizo​​ntalAlign="Center"。

代码:

<asp:TemplateField HeaderText="Something"  ItemStyle-HorizontalAlign="Center" >

 or

<asp:BoundField DataField="" HeaderText="" ItemStyle-HorizontalAlign="Center">
于 2013-01-31T12:39:45.250 回答
-1
The only solution that works for me :   

 <style>
     .HeaderCentered   {
            text-align: center !important;
        }
 </style>

在 gridview 声明中的每个 boundField 中添加: HeaderStyle CssClass="HeaderCentered" :

<asp:BoundField DataField="idLingua" HeaderText="Lingua" SortExpression="idLingua">
     <HeaderStyle CssClass="HeaderCentered" />
     <ItemStyle HorizontalAlign="Center" />
 </asp:BoundField>
于 2019-07-19T12:38:00.180 回答