将XML文件保存到DataGridView中

时间:2023-03-08 22:07:39
         #region get护理单记录信息XML
//将XML文件保存到DataTable
private DataTable FromXML2DataTable(string XMLStr,string data_h,string data_d)
{
XmlDocument myDoc = new XmlDocument();
myDoc.LoadXml(XMLStr);
if (string.IsNullOrEmpty(XMLStr) || !myDoc.HasChildNodes) return null;
DataTable dt = new DataTable();
DataRow row = null;
DataColumn col = null;
//填充数据
foreach (XmlElement el in myDoc.SelectNodes(data_h + "/" + data_d))
{
row = dt.NewRow();
foreach (XmlNode node in el.ChildNodes)
{
if (!dt.Columns.Contains(node.Name))
{
col = new DataColumn();
col.ColumnName = node.Name;
dt.Columns.Add(col);
}
row[node.Name] = node.InnerText;
}
dt.Rows.Add(row);
}
return dt;
}
#region Set护理单信息DataTable到GridView
//NurseGridList.DataSource=DataTable
public void ShowNurseTable(DataTable ds)
{
if (ds != null && ds.Rows.Count > )
{
//自动设置列
NurseGridList.AutoGenerateColumns = false;
//标题内容居中显示位置
NurseGridList.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;

//行内容显示位置
NurseGridList.DefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleCenter;
NurseGridList.DataSource = ds;

//清除选择
NurseGridList.ClearSelection();
}
}
#endregion