CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
IBM Rational 系统开发最佳实践工具包 WebSphere MQ 最佳实践 TOP 15
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  C#

DataGrid绑定了ArrayList,如何将DataGrid列名更改成中文

楼主bitileaves(侠客虫)2006-03-15 17:25:15 在 .NET技术 / C# 提问

Public   Class   ProductInfo  
          Private   _productId   As   String  
          Private   _productName   As   String  
          Private   _productDesc   As   String  
   
          Public   Sub   New(ByVal   productId   As   String,   ByVal   productName   As   String,   ByVal   productDesc   As   String)  
                  Me._productId   =   productId  
                  Me._productName   =   productName  
                  Me._productDesc   =   productDesc  
          End   Sub  
   
          Public   ReadOnly   Property   ProductId()   As   String  
                  Get  
                          Return   Me._productId  
                  End   Get  
          End   Property  
   
          Public   ReadOnly   Property   ProductName()   As   String  
                  Get  
                          Return   Me._productName  
                  End   Get  
          End   Property  
   
          Public   ReadOnly   Property   ProductDesc()   As   String  
                  Get  
                          Return   Me._productDesc  
                  End   Get  
          End   Property  
  End   Class  
  ......  
  dim   plist   as   new   ArrayList()  
  dim   p1   as   new   ProductInfo("p1",   "p1",   "p1")    
  dim   p2   as   new   ProductInfo("p2",   "p2",   "p2")    
  dim   p3   as   new   ProductInfo("p3",   "p3",   "p3")    
  plist.add(p1)  
  plist.add(p2)  
  plist.add(p3)  
  datagrid1.DataSource   =   plist  
  ---------------------------------------------------  
  datagrid1的显示如下  
  ProductId           ProductName               ProductDesc  
  p1                         p1                                 p1  
  p2                         p2                                 p2  
  p3                         p3                                 p3  
   
  ---------------------------------------------------  
  现在想让datagrid1的显示列名为中文"产品编号","产品名称","产品说明",应该怎么弄.  
  100分相求!谢谢!  
  (不好意思是用vb.net的语法) 问题点数:100、回复次数:6Top

1 楼Eddie005(♂) №.零零伍 (♂)回复于 2006-03-15 17:35:23 得分 20

....  
  datagrid1.DataSource   =   plist  
  dataGrid1.TableStyles(0).GridColumnStyles(0).HeaderText   =   "产品编号"  
  dataGrid1.TableStyles(0).GridColumnStyles(1).HeaderText   =   "产品名称"  
  dataGrid1.TableStyles(0).GridColumnStyles(2).HeaderText   =   "产品说明"  
  dataGrid1.refresh()  
  Top

2 楼hyena041(陷入自己的思维中,找不到自己了)回复于 2006-03-15 17:38:39 得分 40

在设计时设置数据表的表样式和列样式    
   
  选择窗体上的数据网格控件。    
  在“属性”窗口中,选择   TableStyles属性并单击省略号按钮   ()。    
  屏幕上将会打开“DataGridTableStyle   集合编辑器”。在此对话框中,您可以添加或移除表样式,设置显示和布局属性,并可以为表样式设置映射名称。    
   
  单击“添加”按钮,将表样式添加到集合中。    
  在   MappingName   属性中,为表样式设置映射名称。映射名称用于指定哪个表应该使用哪种表样式。    
  将列样式添加到您创建的表样式中。为此,请在“DataGridTableStyle   集合编辑器”中,选择   GridColumnStyle   属性并单击省略号按钮   ()。    
  “DataGridColumnStyle   集合编辑器”将打开。在此对话框中,您可以添加或移除列样式,设置显示和布局属性,并可以为数据列设置映射名称和格式设置字符串。    
   
  注意       有关格式设置字符串的更多信息,请参见格式化类型。  
  以编程方式设置数据表的表样式和列样式    
   
  创建一个新的表样式并设置其属性。    
  创建一个列样式并设置其属性。    
  将列样式添加到表样式的列样式集合中。    
  将表样式添加到数据网格的表样式集合中。    
  在下面的示例中,将创建一个新   DataGridTableStyle   的实例并设置其   MappingName   属性。    
  创建   GridColumnStyle   的一个新实例并设置其   MappingName(和其他一些布局和显示属性)。    
  对于要创建的每个列样式,重复步骤   2   到   6。    
  以下示例说明如何创建   DataGridTextBoxColumn   以在创建的此列中显示一个名称。另外,本例中要将列样式添加到表样式的   GridColumnStylesCollection   中,并将表样式添加到数据网格的   GridTableStylesCollection   中。    
   
  '   Visual   Basic  
  Private   Sub   CreateAuthorFirstNameColumn()  
        '   Add   a   GridTableStyle   and   set   the   MappingName    
        '   to   the   name   of   the   DataTable.  
        Dim   TSAuthors   As   New   DataGridTableStyle()  
        TSAuthors.MappingName   =   "Authors"  
   
        '   Add   a   GridColumnStyle   and   set   the   MappingName    
        '   to   the   name   of   a   DataColumn   in   the   DataTable.    
        '   Set   the   HeaderText   and   Width   properties.    
        Dim   TCFirstName   As   New   DataGridTextBoxColumn()  
        TCFirstName.MappingName   =   "AV_FName"  
        TCFirstName.HeaderText   =   "First   Name"  
        TCFirstName.Width   =   75  
        TSAuthors.GridColumnStyles.Add(TCFirstName)  
   
        '   Add   the   DataGridTableStyle   instance   to    
        '   the   GridTableStylesCollection.    
        myDataGrid.TableStyles.Add(TSAuthors)  
  End   Sub    
   
  Top

3 楼bitileaves(侠客虫)回复于 2006-03-16 10:55:01 得分 0

Eddie005(♂)   暴赱   『零零伍』(︶︵︶)  
      谢谢你的回复.  
      用你提供的代码会报运行错误.使用"监视"可知DataGrid1.TableStyles(0).GridColumnStyles.Count=1,所以后面的索引已经越界了.  
   
  hyena041(ni)  
      谢谢你的回复.我试过添加一个新的tablestyle(添加了新的GridColumnStyles),是不行的.我想可能是MapingName不符,或者其他原因.  
  Top

4 楼rainharder(风)回复于 2006-03-16 11:02:11 得分 20

我遇到一次索引越界,是因为多个tablestyle,mapingname冲突,可以多个grid用一个style,不过在界面中好像不能改,要直接在代码里修改Top

5 楼bitileaves(侠客虫)回复于 2006-03-16 11:04:40 得分 0

我的问题解决了.太高兴了.Top

6 楼lxjlz()回复于 2006-03-16 12:19:03 得分 20

csdn高手多呀Top

相关问题

  • DataGrid绑定了ArrayList,如何将DataGrid列名更改成中文
  • 关于更改层中文本的问题
  • 怎样更改桌面图标中文字的颜色?
  • 能不能datagrid中更改数据????
  • 如何更改datagrid中的行高
  • DataGrid中列位置的更改
  • 更改Datagrid的灰色背景色
  • 如何更改datagrid列标题?
  • 如何更改winform的datagrid的列名?
  • 怎么更改datagrid的列名

关键词

  • 样式
  • 属性
  • datagrid
  • 映射
  • 网格
  • 数据
  • gridcolumnstyles
  • tcfirstname
  • tablestyle
  • productdesc

得分解答快速导航

  • 帖主:bitileaves
  • Eddie005
  • hyena041
  • rainharder
  • lxjlz

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo