ثابت ماندن نودهای اضافه شده به treeview هنگام اجرای مجدد برنامه
سلام
من برنامه ای نوشتم که با زدن یک دکمه،یک گره را به treeview اضافه کند.ولی وقتی برنامه را می بندم و دوباره باز می کنم گره هایی را که به treeview افزوده ام را نمی بینم!
شایان ذکر است که برای این برنامه ستاپ ساخته ام و در نسخه نصب شده آن روی رایانه ام، این کار را انجام می دهم نه در قسمت Debug!!!
متشکرم
نقل قول: مشکل در treeview
سلام دوست عزیز .
از همه چیز گفتید اما از ذخیره سازی نود های جدیدی که اضافه کردید نگفتید ، اصلا ذخیره میکنید اون ها رو جایی ؟
برای اینکار حتما باید اطلاعات نود های جدید رو در جایی (دیتابیس ، فایل ، ریجستری و ... ) ذخیره کنید
نقل قول: مشکل در treeview
من یه نمونه برنامه براتون می فرستم.توی این برنامه کاربر بازدن دکمه نودهایی به درخت اضافه می کند ولی با باز و بسته شدن برنامه دیگر خبری از نود ها نیست!!!!
برای دانلود این برنامه لطفا اینجا کلیک کنید.
نقل قول: مشکل در treeview
دوست عزیز معلوم هست که برنامه رو باز و بسته کنید مقدار های قبلی براتون نمایش داده نمیشه !!!
همانطور که عرض کردم شما باید مقدار ها رو در زمان خروج از برنامه در جایی ذخیره سازی کننید و در FormLoad مقدار های قبلی رو ایجاد کنید !
نقل قول: مشکل در treeview
میشه بهم بگید که چطوری باید این کارو انجام بدم؟؟؟
مچکرم
نقل قول: مشکل در treeview
public static void SaveTree(TreeView tree, string filename)
{
using (Stream file = File.Open(filename, FileMode.Create))
{
BinaryFormatter bf = new BinaryFormatter();
bf.Serialize(file, tree.Nodes.Cast<TreeNode>().ToList());
}
}
public static void LoadTree(TreeView tree, string filename)
{
using (Stream file = File.Open(filename, FileMode.Open))
{
BinaryFormatter bf = new BinaryFormatter();
object obj = bf.Deserialize(file);
TreeNode[] nodeList = (obj as IEnumerable<TreeNode>).ToArray();
tree.Nodes.AddRange(nodeList);
}
}
نقل قول: مشکل در treeview
یوزینگ هاش هم اینها هست :
using System.IO;
using System.Runtime.Serialization.Formatters.Binary;