如何在Gridview中对齐文本?

时间:2011-10-24 04:37:53

标签: asp.net

在Asp.Net中,当autogenerate列为true时,如何在列中应用文本对齐[left,center,right]。在gridview的每一行中,文本显示在列的中心,我想显示在列的左侧。谢谢。

4 个答案:

答案 0 :(得分:15)

如果所有列都需要左对齐

,请尝试使用以下语法
<RowStyle HorizontalAlign="Left"></RowStyle>

另请查看这些MSDN资源,其中包含各种GridView格式示例和Code Project文章,其中显示了AutoGenerated列scenerio的示例。

答案 1 :(得分:9)

抱歉,此案例仅适用于autogeneratedcolumns = "false"。查看autogeneratecolumns="true"的编辑如果要对齐列标题,请将其添加到BoundFiled:

 HeaderStyle-HorizontalAlign="Right"

如果你想对齐列的项目,请将其添加到BoundField:

 ItemStyle-HorizontalAlign="Right" 

编辑:

也试试这个 单击gridView-&gt; properties-&gt; RowStyle:horizo​​ntal-align

<asp:gridview id="CustomersGridView" 
    datasourceid="CustomersSqlDataSource"  

    autogeneratecolumns="true"

    allowpaging="true"
    ondatabound="CustomersGridView_DataBound"  
    runat="server">

    <pagerstyle forecolor="Blue"
      backcolor="LightBlue"/>

    <pagertemplate>

      <table width="100%">                    
        <tr>                        
          <td style="width:70%">

            <asp:label id="MessageLabel"
              forecolor="Blue"
              text="Select a page:" 
              runat="server"/>
            <asp:dropdownlist id="PageDropDownList"
              autopostback="true"
              onselectedindexchanged="PageDropDownList_SelectedIndexChanged" 
              runat="server"/>

          </td>   

          <td style="width:70%; text-align:right">

            <asp:label id="CurrentPageLabel"
              forecolor="Blue"
              runat="server"/>

          </td>

        </tr>                    
      </table>

    </pagertemplate> 

  </asp:gridview>

有关此link

的更多信息

答案 2 :(得分:1)

您可以在标记中定义<RowStyle><HeaderStyle>元素。

示例:

 <asp:GridView ID="productGridView" Runat="server" 
      DataSourceID="productsDataSource"
        DataKeyNames="ProductID" AutoGenerateColumns="False" 
         BorderWidth="1px" BackColor="#DEBA84" 
         CellPadding="3" CellSpacing="2" BorderStyle="None" 
         BorderColor="#DEBA84">
        <FooterStyle ForeColor="#8C4510" 
          BackColor="#F7DFB5"></FooterStyle>
        <PagerStyle ForeColor="#8C4510" 
          HorizontalAlign="Center"></PagerStyle>
        <HeaderStyle ForeColor="White" Font-Bold="True" 
          BackColor="#A55129"></HeaderStyle>

    </asp:GridView>

答案 3 :(得分:0)

将您的列作为模板字段,如下所示,并提供 ItemStyle-Horizo​​ntalAlign =“Left”

 <Columns>
  <asp:TemplateField ItemStyle-Width="5%" HeaderText="No." ItemStyle- 
     HorizontalAlign="Left">
     <ItemTemplate>
     <%# Container.DataItemIndex + 1 %>
     </ItemTemplate>
     </asp:TemplateField>
 </Columns>

所以它适用于所有浏览器。