PDA

View Full Version : خطا در خواندن از XML



fakhravari
سه شنبه 17 تیر 1393, 16:49 عصر
با سلام من یه فایل xml دارم میخوام توی tree پرش کنم اما خطای
Min (5) must be less than or equal to max (-1) in a Range object
میده
public void Load_tree() {
treeView1.Nodes.Clear();
treeView1.ImageList = imageList1;


foreach (DataRow dr in D1.Tables[0].Rows)
{
if (Convert.ToInt32(dr["ParentID"]) == 0)
{
TreeNode tnParent = new TreeNode();
tnParent.Text = dr["Name"].ToString();
tnParent.Tag = dr["FileName"].ToString();
string value = dr["ID"].ToString();
tnParent.ImageIndex = 2;
tnParent.SelectedImageIndex = 2;
tnParent.Expand();
treeView1.Nodes.Add(tnParent);
FillChild(tnParent, value);
}
}
}
public int FillChild(TreeNode parent, string ID)
{
DataRow[] tt = D1.Tables[0].Select("ParentID =" + ID);
DataTable D2 = D1.Tables[0].Clone();
foreach (DataRow d in tt)
{
D2.ImportRow(d);
}


if (D2.Rows.Count > 0)
{
foreach (DataRow dr in D2.Rows)
{
TreeNode child = new TreeNode();
child.Text = dr["Name"].ToString().Trim();
child.Tag = dr["FileName"].ToString();
string temp = dr["ID"].ToString();
child.ImageIndex = 1;
child.SelectedImageIndex = 1;
child.Collapse();
parent.Nodes.Add(child);
FillChild(child, temp);
}
return 0;
}
else
{ return 0; }
}

خطا در FillChild است

fakhravari
سه شنبه 17 تیر 1393, 17:04 عصر
حل شد
var dv = D1.Tables[0].DefaultView; dv.RowFilter = "ParentID =" + ID;
var newDS = new DataSet();
var newDT = dv.ToTable();
newDS.Tables.Add(newDT);