您的位置:首页 > 其它

datagridview绑定数据

2015-01-27 11:31 267 查看
1.直接读取xml并将值赋给datagridview
xmlDoc.Load("deviceInfo.xml");
XmlNodeList nodelist = xmlDoc.SelectSingleNode("DEVICE").ChildNodes;
foreach (XmlNode xn in nodelist)
{
XmlElement xe = (XmlElement)xn;
int index = dataGridView1.Rows.Add();
DataGridViewRow newrow = dataGridView1.Rows[index];
newrow.Cells[0].Value = xe.ChildNodes.Item(0).InnerText;
newrow.Cells[1].Value = xe.ChildNodes.Item(1).InnerText;
newrow.Cells[2].Value = xe.ChildNodes.Item(2).InnerText;
newrow.Cells[3].Value = xe.ChildNodes.Item(3).InnerText;
newrow.Cells[4].Value = xe.ChildNodes.Item(4).InnerText;
newrow.Cells[5].Value = xe.ChildNodes.Item(5).InnerText;
newrow.Cells[6].Value = xe.ChildNodes.Item(6).InnerText;
newrow.Cells[7].Value = xe.ChildNodes.Item(7).InnerText;
newrow.Cells[8].Value = xe.ChildNodes.Item(8).InnerText;
newrow.Cells[9].Value = xe.ChildNodes.Item(9).InnerText;
newrow.Cells[10].Value = xe.ChildNodes.Item(10).InnerText;
newrow.Cells[11].Value = xe.ChildNodes.Item(11).InnerText;
newrow.Cells[12].Value = xe.ChildNodes.Item(12).InnerText;
newrow.Cells[13].Value = xe.ChildNodes.Item(13).InnerText;
newrow.Cells[14].Value = xe.ChildNodes.Item(14).InnerText;
newrow.Cells[15].Value = xe.ChildNodes.Item(15).InnerText;
newrow.Cells[16].Value = xe.ChildNodes.Item(16).InnerText;
newrow.Cells[17].Value = xe.ChildNodes.Item(17).InnerText;
newrow.Cells[18].Value = xe.ChildNodes.Item(18).InnerText;
newrow.Cells[19].Value = xe.ChildNodes.Item(19).InnerText;
}
2.给类中定义属性变量,读取xml的值,将每个节点的值存入BindingList中,并将其作为gridview的数据源
string addr, kind, num, mark ;
BindingList<Form1> bdlst = new BindingList<Form1>();
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.Load("deviceInfo.xml");
XmlNodeList nodelist = xmlDoc.SelectSingleNode("DEVICE").ChildNodes;
foreach (XmlNode xn in nodelist)
{
Form1 frm = new Form1();
frm.addr = xe.ChildNodes.Item(0).ToString();
frm.kind = xe.ChildNodes.Item(1).ToString();
frm.num = xe.ChildNodes.Item(2).ToString();
frm.mark = xe.ChildNodes.Item(3).ToString();
bdlst.Add(frm);*/
}
dataGridView1.DataSource = bdlst;
3.将xml数据存入dataset,通过dataset直接作为数据源展示
DataSet ds = new DataSet();
BindingSource bd = new BindingSource();
ds.ReadXml("deviceInfo.xml");
dataGridView1.Columns.Clear();
bd.DataSource = ds.Tables[0].DefaultView;
dataGridView1.DataSource = bd;
4. 将xml数据存入dataset,通过将dataset中的值一一取出赋给datagridview中的单元格
ds.ReadXml("deviceInfo.xml");
dataGridView1.Rows.Clear();
dataGridView1.Rows.Add(ds.Tables[0].Rows.Count);
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
for (int j = 0; j < ds.Tables[0].Rows.Count; j++)
{
dataGridView1.Rows[i].Cells[j].Value = ds.Tables[0].Rows[i].ItemArray[j];
}
}
5.改变列标题,及列宽
dataGridView1.Columns[0].HeaderText = "1";
dataGridView1.Columns[0].Width = 20;
dataGridView1.Columns[1].HeaderText = "2";
dataGridView1.Columns[1].Width = 20;
dataGridView1.Columns[2].HeaderText = "3";
dataGridView1.Columns[2].Width = 20;

记录下来,希望对自己和需要的人有所帮助!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息