نقل قول نوشته شده توسط barnamenevisjavan مشاهده تاپیک
سلام شما چندتا راه دارید:
اول اینکه اطلاعات رو از تکست باکس ها بگیرید و داخل پراپرتی استاتیک ذخیره کنید
اول یه نوع استاتیک از MainWindow ایجاد کنید
Public Static MainWindow Instance;

بعد در متد سازنده InitializeMainWindow کد زیر رو بنویسید
Instance=this;

حالا متغیر های استاتیک رو ایجاد کنید

Public static string IP;
Public static string Username;
Public static string Password;

حالا هرجا نیاز بود مقدار پراپرتی هارو ست کنید
بعدش میتونید از تمام کلاس ها و ویندو ها دسترسی داشته باشید
به این صورت:

MainWindow.Instance.IP
روش بعدی هم به این صورت هست که شما اطلاعات رو در یک فایل و مسیر مشخص ذخیره کنید و هرجا لازم بود فایل رو بخونید
روشی هم که اقای خاطی معرعی کردن هم غیر استاندارد و هم پیچیده هستش و اصلا پیشنهاد نمیشه

سلام دوستان، وقت همگی عزیزان بخیر. از همگی مهندسین و اساتید گرامی ممنونم که بهم کمک کردن تا این مشکل رو حل کنم. ببخشید که دیر جواب دادم، آقا پسرمون 6 روز پیش به دنیا اومد و کلا وقتم رو مجیور شدم بذارم برای ایشون
در مورد اوامری که فرمودین، رفتم دنبالش و از تمامی راهنمایی های شما بزرگواران استفاده کردم. در نهایت خداروشکر تونستم این مورد رو حل کنم و تصمیم گرفتم روند رو برای همگی توضیح بدم شاید یه روزی به درد کسی خورد.

در Form اول که اطلاعات IP و User و Pass میکروتیک رو میگیرم،یه کلاس جدید تعریف کردم به این صورت:

public static class MyGlobals
{
public static string ip1001;
public static string user1002;
public static string pass1003;
}

بعد داخل دکمه OK رفتم و این کد هارو نوشتم:

MyGlobals.ip1001 = TXT100.Text;
MyGlobals.user1002 = TXT101.Text;
MyGlobals.pass1003 = TXT102.Text;

در نهایت هرجای برنامه، در فرم های دیگه برنامه، بخوام از این 3 تا TextBox استفاده کنم، فقط کافیه که اسامی اونها رو صدا بزنم، (برای مثال من اینجا این 3 تا TextBox رو اینجوری صدا زدم):

connection.Open(MainWindow.MyGlobals.ip1001, MainWindow.MyGlobals.user1002, MainWindow.MyGlobals.pass1003);


همینطور برای اینکه پارامترهای مختلف دستورات میکروتیک رو برامون بصورت جداگانه ارسال کند، از کد زیر استفاده میکنیم:

var cmd = connection.CreateCommandAndParameters("/radius/print");
var list = cmd.ExecuteList();
foreach (var item in list)
{
var a = item.Words.TryGetValue(".id", out string value00);
var b = item.Words.TryGetValue("service", out string value01);
var c = item.Words.TryGetValue("address", out string value02);
COM1.Items.Add(value00 + "......." + value02 + "......." + value01);
}



در نهایت از زحمات و راهنمایی ها تمای عزیزان ممنونم و از لطفشون کمال تشکر رو دارم. مرسی همگی/