对齐标题文本中心asp:GridView

时间:2016-05-24 11:09:33

标签: c# asp.net gridview

我在gridview中显示一些内容,除了网格的对齐外,一切正常。

我试图将Header的文本居中对齐,但没有任何工作正常。

我试过了:

 <asp:GridView ID="Gv_Edu" runat="server" BackColor="White" AutoGenerateColumns="false"
   BorderColor="#000000" BorderStyle="Solid" BorderWidth="1px" CellPadding="4"
  ForeColor="Black" OnRowDataBound="Gv_Edu_RowDataBound">
  <Columns>
<asp:TemplateField HeaderText="Sr.No">
<HeaderStyle HorizontalAlign="Center" />
<ItemTemplate>
   <asp:Label runat="server" ID="srlbl" Text='<%#Container.DataItemIndex+1 %>'></asp:Label>
<ItemTemplate>
  <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="10%" />
  </asp:TemplateField>
    <asp:BoundField HeaderText="Degree / Certificate" DataField="deg">
   <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="30%" />
  </asp:BoundField>
    <asp:BoundField HeaderText="Institute" DataField="inst">
    <HeaderStyle HorizontalAlign="Center" />
     <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="20%" />
    </asp:BoundField>
    <asp:BoundField HeaderText="Program Duration" DataField="term">
      <HeaderStyle HorizontalAlign="Center" />
      <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" Width="10%" />
       </asp:BoundField>
      </Columns>
 <HeaderStyle BackColor="#6B696B" Font-Bold="True" ForeColor="White" />
 </asp:GridView>

2 个答案:

答案 0 :(得分:1)

您可以将此代码试用到aspx中的模板字段吗?

ItemStyle-HorizontalAlign="Center"

答案 1 :(得分:0)

有时候接受的答案不会起作用(css是由样式表和/或皮肤文件强制的)。 在这种情况下,您可以设置自定义css类(如果要对齐特定列):

.alignRight {
    text-align: right !important;
}

接下来,您需要附加到GridView RowDataBound事件并在特定列上设置css:

    protected void SumGridView_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.Header)
        {
            string forcedCss = "alignRight";

            //TODO: change your col index:
            e.Row.Cells[2].CssClass = forcedCss;
        }
    }