1.建立一个页插入一个DataGrid;
<asp:DataGrid id="MyDataGrid" runat="server" AllowPaging="true" PageSize="3">
<PagerStyel Mode="NumericPages" HorizontalAlign ="center"></PagerStyle>
</asp:DataGrid>2.在Page_Load下面添加如下代码 :DataTable dt = new DataTable("dt_1");
dt.Columns.Add("str1");
dt.Columns.Add("str2"):
dt.Columns.Add("str3");dt.Rows.Add(new string[]{"str1","str2","str3"});
dt.Rows.Add(new string[]{"str1","str2","str3"});
dt.Rows.Add(new string[]{"str1","str2","str3"});
dt.Rows.Add(new string[]{"str1","str2","str3"});
dt.Rows.Add(new string[]{"str1","str2","str3"});MyDataGrid.DataSource = dt;
MyDataGrid.Databind();3.运行 看分页导航 那几个数字是否能居中,我的是没办法居中,不知道为什么(是bug吗??)

解决方案 »

  1.   

    我想你不能居中的原因不在datagrid,也许在其他代码上,你再找找,你能把整个aspx代码发来看看就好了。
      

  2.   

    看一看这个:
    http://www.skyiv.com/csdn/DataGrid.aspx
    导航栏是居中的。下面是 DataGrid.aspx的源码:
    <script runat="server" language="C#" >
    public void Page_Load()
    {
      if (!(Page.IsPostBack))
      {
        System.Data.DataTable dt = new System.Data.DataTable("dt_1"); 
        dt.Columns.Add("A"); 
        dt.Columns.Add("B"); 
        dt.Columns.Add("C"); 
        dt.Rows.Add(new string[]{"1","2","3"}); 
        dt.Rows.Add(new string[]{"4","5","6"});
        dt.Rows.Add(new string[]{"str7","str8","str9"}); 
        dt.Rows.Add(new string[]{"str10","str11","str12"}); 
        dt.Rows.Add(new string[]{"str13","str14","str15"}); 
        MyDataGrid.DataSource = dt;
        MyDataGrid.DataBind();
        Session["dt"] = dt;
      }
    }protected void Rec_ChangePage(Object sender, DataGridPageChangedEventArgs e)
    {
      MyDataGrid.CurrentPageIndex = e.NewPageIndex;
      MyDataGrid.DataSource = Session["dt"];
      MyDataGrid.DataBind();
    }
    </script><form method="Post" runat="server">
    <asp:DataGrid id="MyDataGrid"
      OnPageindexChanged="Rec_ChangePage"
      AllowPaging="true"
      PageSize="3"
      runat="server">
    <PagerStyle Mode="NumericPages" HorizontalAlign="Center" />
    </asp:DataGrid> 
    </form>
      

  3.   

    我拷贝上面那位兄弟的代码,没想到我还是没办法居中,我想这可能跟环境有关吧.
    我的是window+IE6.0  ,在生成的html代码中我看到居中不了是因为没有生成colspan标签..不知道有方法解决没.
      

  4.   

    <HeaderStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False"
            Font-Underline="False" HorizontalAlign="Center" VerticalAlign="Middle" />
        <ItemStyle Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Strikeout="False"
            Font-Underline="False" HorizontalAlign="Center" VerticalAlign="Middle" Wrap="False" />加进去.就可以对齐了
      

  5.   

    上面的兄弟你理解错误了,我这里是分页导航不能居中的问题.
    我的环境是:window+IE6.0+IIs6.0 我这边还是无法居中,这个问题有办法解决吗?
    (我试了下GridView这个控件都是可以居中,但问题是实际项目中全是DataGrid要是改成GridView要改的地方太多了,不知道有别的解决方法没.)
    谢谢各位支持了。