在DataGrid显示数据库中的表,但是现在数据库中的字段头是英文,要通过在数据字典中根据英文名查中文名,然后在DataGrid中显示出来,我也可以通过在select ??? as "中文名"来完成,但是这样很麻烦,所以想请教各位怎么将DataGrid中第一行的每个列和中文字段绑定然后显示出来,谢谢各位!

解决方案 »

  1.   

    第一行的每个列???
    楼主你说的是表头吧?俗称的"HeaderText"的那个吧??
    我是菜鸟不知道什么是"数据字典",楼主告诉我好吗?
    ---偶只知道无法直接对DataGrid的HEADER进行后台操作处理,但是可以通过另一种方法去绑定:
     就是用Pager栏去做一个假的Header
      

  2.   

    <asp:BoundColumn DataField="name" HeaderText="名字">
    这个就是name字段显示为名字的写法,在aspx里
      

  3.   

    <asp:DataGrid runat=server id="titlesGrid"
         AutoGenerateColumns="false">
      <property name="Columns">
        <asp:BoundColumn HeaderText="Title" DataField="title"/>
        <asp:BoundColumn HeaderText="Author" DataField="au_name"/>
        <asp:BoundColumn HeaderText="Date Published" DataField="pubdate"/>
        <asp:BoundColumn HeaderText="Price" DataField="price"/>
      </property>
    </asp:DataGrid>
      

  4.   

    首先回答ccwq([Kiss Eash Not Teach])的问题,数据字典就是用来保存其它表中的英文字段的汉语意思,这样更方便吧,我是这样理解的,不知道大家有何看法,请多指教,Pager类是什么意思啊。不太懂啊。在线等。三楼,四楼的我都想到了,但是这样太麻烦人工做的太多,有没有更好的办法啊?
      

  5.   

    你们说的都不能动态更新是不是呢?比如在数据字典里改了一个英文字段的汉语意思,这样维护的时候,还要到程序里面改相应的字段汉语意思,这样不行的啊。所以我想知道,有没有什么方法来对DataGrid的表头来进行后台处理。
      

  6.   

    <asp:BoundColumn DataField="name" HeaderText="名字">
    这个就是name字段显示为名字的写法,
      

  7.   

    dim ts as new datagridtablestyle
    ts.mappingname="your_table" '这个名字一定要和你的表名保持一致
    dim tc as new datagridtextboxcloumn
    tc.mappingname="your_field" '字段名也必须和你的字段名保持一致,如果使用了别名,则与别名保持一致
    tc.headertext="汉语" '此处可以去读你的数据字典,那么你只需修改数据字典就可以修改相应的列标头了
    tc.width=99 '此处用于规定列宽
    ts.gridcolumnstyles.add(tc)
      

  8.   

    清深不寿,你好,可以用C#语言帮我实现吗,谢谢啦。是不是要using System.*.*.*什么啊。具体的我不太清楚,麻烦你了。谢谢!
      

  9.   

    想起来了,using System.windows.forms.datagrid,你说的是在windows模式下吧,对吗?我想知道的是在web forms下啊。你有好的办法吗?
      

  10.   

    http://www.csdn.net/develop/MY_article.asp?author=Latitude你去看看,这里有关于datagrid很详细的用法。