دوست من از اینکه مطرح شدن این تاپیک باعث شد یکی از اشتباهات من برطرف بشه ازت ممنونم.
تا امروز من فکر می کردم،مسیر نامی ،یکتا است یعنی در هر عمق،فقط یک نام گره اعتبار دارد (قبلا بحث شد) ولی الان که تست کردم دیدم اینطور نیست و می توان گره هایی داشت که هر دو فرزند یک والد بوده و دارای نام و متن یکسان باشند.در نتیجه سلسله مراتبی نامی هم ،راه خوبی برای یکتا بودن نیست.من سلسله مراتب index رو پیشنهاد می کنم (مطمئنا این دیگر یکتا است).در هر حال این دو سلسله مراتب را باید خودت ایجاد کنی (مانند FullPath که سلسسه مراتب متنی را می دهد،برای نام یا index یا ... وجود ندارد).
برای این موضوع روش زیررو پیشنهاد می کنم:
private void treeView1_NodeMouseDoubleClick(object sender, TreeNodeMouseClickEventArgs e)
{
TreeNode nod;
string str1 = "";
string str2 = "";
nod = e.Node;
do
{
str1 = nod.Name + "\\" + str1;
str2 = nod.Index.ToString() + "\\" + str2;
nod = nod.Parent;
} while (nod != null);
MessageBox.Show(str1 + "\n" + str2);
}