现在的位置: 首页 > 综合 > 正文

小问题集(一)

2013年10月05日 ⁄ 综合 ⁄ 共 811字 ⁄ 字号 评论关闭

1.winform中的DataGrid绑定数据的时候,DataGrid的列表头通常与表的字段名相同;如果不希望这样,如何解决?比如:字段名是英文(或是拼音)的,如何用中文显示这些列表头?

2.MySql的中文显示问题.

3.如何动态添加菜单,并为其添加响应事件?

4.如何右键弹出定制菜单

问题1答案:

从数据库读取数据绑定到DataGrid后,DataGrid的列标头通常跟数据库的字段名相同,如果
不希望这样,那么可以使用表和列的映射技术:
using System.Data.Common;

string strSql="select * from Department";
OleDbDataAdapter adapter=new OleDbDataAdapter(strSql,conn);

DataTableMapping dtmDep=adapter.TableMappings.Add("Department","部门表");

dtmDep.ColumnMappings.Add("Dep_Id","部门编号");
dtmDep.ColumnMappings.Add("Dep_Name","部门名称");

DataSet ds=new DataSet();

adapter.Fill(ds,"Department"); //此处不能用"部门表"

响应单击事件(datagrid的CurrentCellChanged事件)
DataGridName.CurrentCell.ColumnNumber;//所单击列的下标,从0开始,下同
DataGridName.CurrentCell.RowNumber;//所单击行的下标
DataGridName[DataGridName.CurrentCell];//所单击行和列的值

DataGridName[DataGridName.CurrentRowIndex,n].ToString();//获得单击行第n+1列的值

抱歉!评论已关闭.