private void button1_Click(object sender, EventArgs e) {
try
{
DataSet Ds = DAL.FillDataTable("SELECT ID, Name, FileName,ParentID FROM tree", false);
Ds.WriteXml("tree.xml");
MessageBox.Show("Oki");
}
catch { MessageBox.Show("Eroor"); }
}
private static DataSet D1 = new DataSet();
private void Form1_Load(object sender, EventArgs e)
{
DataSet PrSet = new DataSet();
PrSet.ReadXml(@"tree.xml");
D1 = PrSet;
Load_tree();
}
public void Load_tree()
{
treeView1.Nodes.Clear();
treeView1.ImageList = imageList1;
treeView1.ItemHeight = 30;
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();
int value = Convert.ToInt32(dr["ID"].ToString());
tnParent.ImageIndex = 2;
tnParent.SelectedImageIndex = 2;
tnParent.Expand();
treeView1.Nodes.Add(tnParent);
FillChild(tnParent, value);
}
}
}
public int FillChild(TreeNode parent, int ID)
{
var dv = D1.Tables[0].DefaultView;
dv.RowFilter = "ParentID =" + ID;
var newDS = new DataSet();
var newDT = dv.ToTable();
newDS.Tables.Add(newDT);
if (newDS.Tables[0].Rows.Count > 0)
{
foreach (DataRow dr in newDS.Tables[0].Rows)
{
TreeNode child = new TreeNode();
child.Text = dr["Name"].ToString().Trim();
child.Tag = dr["FileName"].ToString();
int temp = Convert.ToInt32(dr["ID"].ToString());
child.ImageIndex = 1;
child.SelectedImageIndex = 1;
child.Collapse();
try
{
parent.NodeFont = new System.Drawing.Font("B Mitra", 11, System.Drawing.FontStyle.Bold);
parent.ForeColor = Color.Black;
}
catch { }
parent.Nodes.Add(child);
FillChild(child, temp);
}
return 0;
}
else
{ return 0; }
}
private static string Adress = ""; private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
{
listBox1.Items.Clear();
try
{
Adress = treeView1.SelectedNode.Tag.ToString();
if (Adress == "$") return;
if (File.Exists(Adress))
{ pdfDocument1.FilePath = (Adress); }
else { MessageBox.Show("فایل موجود نمی باشد : " + Adress); }
for (int i = 1; i <= pdfDocument1.PageCount - 1; i++)
{
listBox1.Items.Add(i);
}
}
catch { }
}