PDA

View Full Version : سوال: استفاده از خصوصیات یک کامپوننت در فرم های دیگر بدون اضافه کردن مجدد کنترل و تکرار برخی از متد ها



ostovarit
جمعه 12 آذر 1389, 12:41 عصر
با سلام
من از یک کامپوننت استفاده میکنم و کنترل اون رو به فرم اولم اضافه کردم مثلا کنترل ( قفل تاینی یا کامپوننت ارسال پیامک کیلیکس و امثال اینها) ... حالا در فرم دوم میخوام به این کنترل دسترسی پیدا کنم و از متد هاش استفاده کنم ... اون کنترل رو به صورت public تعریف کردم ... تا اینجا دسترسی دارم و متد ها هم نمایش داده میشه ... اما یک سری متد ها باید تکرار بشه یعنی مجبورم مثلا برای ارسال پیامک در فرم دوم دوباره لاگین کنم!
چطور میتونم از تکرار این کدها جلوگیری کنم و یک سری عملیات که قبلا انجام شده رو تکرار نکنم ...
راهنمایی کنید ممنون

kamran00f
جمعه 12 آذر 1389, 14:06 عصر
با سلام
من از یک کامپوننت استفاده میکنم و کنترل اون رو به فرم اولم اضافه کردم مثلا کنترل ( قفل تاینی یا کامپوننت ارسال پیامک کیلیکس و امثال اینها) ... حالا در فرم دوم میخوام به این کنترل دسترسی پیدا کنم و از متد هاش استفاده کنم ... اون کنترل رو به صورت public تعریف کردم ... تا اینجا دسترسی دارم و متد ها هم نمایش داده میشه ... اما یک سری متد ها باید تکرار بشه یعنی مجبورم مثلا برای ارسال پیامک در فرم دوم دوباره لاگین کنم!
چطور میتونم از تکرار این کدها جلوگیری کنم و یک سری عملیات که قبلا انجام شده رو تکرار نکنم ...
راهنمایی کنید ممنون

مطمئن نیستم ولی فک کنم این مشکلتو حل کنه: به فرم قبلی (مثلاForm1) دسترسی پیدا کن. نه اینکه یکی ازش بسازی. اینجوری:



Form1 f;
foreach(Form frm in Application.OpenForms)
{
if(frm is Form1)
f = (Form1) frm;
}


بعد از این قاعدتا باید به متدی با اسم مثلا GetName که تو فرم دوم هست اینجوری دسترسی داشته باشی: f.GetName();