private DataSet GetDataSet()
{
string info = string.Empty;
erp.Departments d = new WindowsApplication1.erp.Departments();
DataSet ds = d.QueryAllDepartmentsInDataSet(out info);
return ds;
}
private void InitializeDataGrid()
{
DataGridTableStyle myTableStyle = new DataGridTableStyle();
myTableStyle.MappingName ="Departments";
//新建三个DataGridColumnStyle
DataGridColumnStyle myColumnStyle1=new DataGridTextBoxColumn();
myColumnStyle1.MappingName ="ID";
myColumnStyle1.HeaderText="编号";
myColumnStyle1.Width=35;
DataGridColumnStyle myColumnStyle2=new DataGridTextBoxColumn();
myColumnStyle2.MappingName="Name";
myColumnStyle2.HeaderText="名称";
myColumnStyle2.Width=80;
DataGridColumnStyle myColumnStyle3 =new DataGridTextBoxColumn();
myColumnStyle3.MappingName ="Description";
myColumnStyle3.HeaderText ="备注";
myColumnStyle3.Width=80;
//添加三个ColumnStyle到TableStyle中
myTableStyle.GridColumnStyles.Add(myColumnStyle1);
myTableStyle.GridColumnStyles.Add(myColumnStyle2);
myTableStyle.GridColumnStyles.Add(myColumnStyle3);
//将TableStyle添加到DataGrid中
dataGrid1.TableStyles.Clear();
dataGrid1.TableStyles.Add(myTableStyle);
dataGrid1.DataSource = GetDataSet();
}
这里要强调的是:myTableStyle.MappingName ="Departments";
必须要设定;而且相应的 myColumnStyle3.MappingName都要和表字段对应。
另外dataGrid1.TableStyles.Clear();这句也要加上;否则会提示重复加载