我在SqlDataAdaper里面的command=SELECT MB001,MB002,MB003 FROM INVMB
显示到DBGRID里面它的字段名为MB001,MB002,MB003.请问怎么样才可以显示中文?难道一定要用SELECT MB001 AS '品号' from INVMB 这样才可以吗?
显示到DBGRID里面它的字段名为MB001,MB002,MB003.请问怎么样才可以显示中文?难道一定要用SELECT MB001 AS '品号' from INVMB 这样才可以吗?
解决方案 »
- C#小菜鸟求助,插入数据库问题
- 请问,窗体最小化引发的事件是哪个?
- c# 使用SHDocVw.InternetExplorer,加载一个网页,BeforeNavigate2和DocumentComplete会被多次调用的问题
- 为什么TextBox的属性BorderStyle设置为FixedSingle时,字体的位置会偏上?
- Winform中动态生成的文本框如何根据名称得到文本框内的值?
- 求助!Xp系统数据库不能连接问题!!!
- 如何實現字符串對數字的轉換?
- 关于车牌识别系统
- 解析javascript问题??求高手回答
- 求助下对于XmlSerializer的Deserialize的异常处理方法
- TcpListener 类的问题~`
- 求求您,帮帮我!关于把textBox的数据更新到数据库的问题!!谢谢您!
style.MappingName = "dataset里面的表名";DataGridTextBoxColumn txt = new DataGridTextBoxColumn();
txt.HeaderText = "这是标题";
txt.MappingName = "字段名";
style.GridColumnStyles.Add(txt);dataGrid.TableStyles.Clear();
dataGrid.TableStyles.Add(style);dataGrid.DataSource = dataTable;
myDBColumn4.HeaderText = "标题";
myDBColumn4.MappingName = "字段";
myDBColumn4.Width = 120;
this.DataGrid1.TableStyles[0].GridColumnStyles[0].HeaderText="中文";
这个是查询的时候就改了,可以直接显示的
select 英文字段名 as 中文字段名 from tablename
private void dgColumnStyle_Role(bool editFlag)
{
//声明DataGridTableStyle
DataGridTableStyle myTableStyle = new DataGridTableStyle( );
myTableStyle.MappingName = "XT_QX_JS_TB";//声明DataGridColumnStyle1
DataGridTextBoxColumn ColumnStyle1 = new DataGridTextBoxColumn();
ColumnStyle1.MappingName = "QX_JS_BM";
ColumnStyle1.HeaderText = "编号";
ColumnStyle1.Width = 0;
ColumnStyle1.ReadOnly = true;
ColumnStyle1.Format= "yyyy年MM月dd日";//这列如果是日期类型可以用指定日期格式显示日期值。
myTableStyle.GridColumnStyles.Add(ColumnStyle1);//声明DataGridColumnStyle2
DataGridTextBoxColumn ColumnStyle2 = new DataGridTextBoxColumn();
ColumnStyle2.MappingName = "QX_JS_MC";
ColumnStyle2.HeaderText = "名称";
ColumnStyle2.Width = 120;
ColumnStyle2.NullText="";
myTableStyle.GridColumnStyles.Add(ColumnStyle2);//声明DataGridColumnStyle3
DataGridTextBoxColumn ColumnStyle3 = new DataGridTextBoxColumn();
ColumnStyle3.MappingName = "QX_JS_MS";
ColumnStyle3.HeaderText = "描述";
ColumnStyle3.Width = 120;
ColumnStyle3.NullText="";
myTableStyle.GridColumnStyles.Add(ColumnStyle3);//声明DataGridColumnStyle5
DataGridBoolColumn ColumnStyle5 = new DataGridBoolColumn();
ColumnStyle5.MappingName = "QX_JS_SFYX";
ColumnStyle5.HeaderText = "有效";
ColumnStyle5.AllowNull = false;
ColumnStyle5.TrueValue = (Decimal)1;
ColumnStyle5.FalseValue = (Decimal)0;
ColumnStyle5.Width = 40;
myTableStyle.GridColumnStyles.Add(ColumnStyle5);//声明DataGridColumnStyle4
DataGridTextBoxColumn ColumnStyle4 = new DataGridTextBoxColumn();
ColumnStyle4.MappingName = "QX_JS_XSSX";
ColumnStyle4.HeaderText = "顺序";
ColumnStyle4.Width = 40;
myTableStyle.GridColumnStyles.Add(ColumnStyle4);dataGridMain.TableStyles.Clear();
dataGridMain.TableStyles.Add( myTableStyle );
}
#endregion
为绑定该数据库的datagrid指定dataGridTableStyle(点击TableStyles属性右边的按纽),设置dataGridTableStyle的MappingName为你的表名,然后再添加GridCloumnStyle(也是点击GridCloumnStyles右边的按纽)设置GridCloumnStyle为表中的列名,想要哪个显示就添加哪个,不要显示就不添加即可!
<asp:TemplateColumn HeaderText="中文名字">
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"title")%>
</ItemTemplate>
</asp:TemplateColumn>
如果你的表格是固定显示某些列,在前台直接写死就行了
最简单的就是使用表格的“属性生成器”,添加一些绑定列,把“页面文本”设置成你要显示的文本(品号),“数据字段”设置为对应的数据库列(MB001)就行了
或者直接在HTML中为表格添加如下的绑定列
<asp:BoundColumn DataField="MB001" HeaderText="品号"></asp:BoundColumn>如果需要后台动态设定,就参考楼上各位的代码吧