本文参考:操作DataGridView 以xml形式保存,拖动需要列的顺序保存,加载,删除文件;
View Code
Load 事件调用加载文件 (subInitDgv();)
//初始化列表 private void subInitDgv()
{
LoginInfo.BindReadDataGridViewStyle(this.Name, dgvSubbill);
}
详见下面代码:
//加载XMLDataGridView 样式 public static void BindReadDataGridViewStyle(string strFromName, DataGridView dgvMain)
{
try
{
string XMLPath;
XMLPath = Application.StartupPath + @"\\config" + "\\";
string FileName = XMLPath + strFromName + "_" + dgvMain.Name + ".xml";
if (!File.Exists(FileName))
{
return;
}
DataTable DTname = new DataTable();
DTname.TableName = dgvMain.Name;
DTname.Columns.Add("ColName"); //列名 DTname.Columns.Add("ColHeaderText"); //标题 DTname.Columns.Add("ColWidth"); //宽度 DTname.Columns.Add("ColVisble"); //是否显示 DTname.Columns.Add("ColId"); //显示顺序//DTname.Columns.Add("DefaultCellStyle");//单元格样式//DTname.Columns.Add("ColumnType");//单元格类型 DTname.ReadXml(FileName);
foreach (DataRow row in DTname.Rows)
{
dgvMain.Columns[row["ColName"].ToString().Trim()].HeaderText = row["ColHeaderText"].ToString().Trim();
dgvMain.Columns[row["ColName"].ToString().Trim()].Width = int.Parse(row["ColWidth"].ToString().Trim());
dgvMain.Columns[row["ColName"].ToString().Trim()].Visible = Boolean.Parse(row["ColVisble"].ToString().Trim());
dgvMain.Columns[row["ColName"].ToString().Trim()].DisplayIndex = int.Parse(row["ColId"].ToString().Trim());
//dgvMain.Columns[row["name"].ToString()].DefaultCellStyle.Alignment = (DataGridViewContentAlignment)row["DefaultCellStyle"];//dgvMain.Columns[row["ColumnType"].ToString()].DataPropertyName = row["ColumnType"].ToString(); }<