سلام.
- استفاده از پنل که گفتید قدیمی شده ... چه مشکلی داره؟
مشکلی نداره، چون پنجره هایی مثل Internet Explorer مد شده و کاربر راحت تره به همین دلیل گفتم قدیمی شده (نسبت به Internet Explorer) !!!
- در این روشی که من رفتم چه جوری میشه فرم باز شده رو مجدد Active کرد؟
یه نمونه کد براتون میذارم که مشکلتونو حل می کنه. فقط وقتی میخواین فرمی رو باز کنین، از اون Sample گرفته و به این تابع ارسال کنین:
void prcTest(object Form)
{
Form f = (Form)Form;
bool Is = false;
Control Ctl = null;
if (panel1.Controls.Count >= 1)
{
foreach (Control Ctrl in panel1.Controls)
{
if (Ctrl is Form && ((Form)Ctrl).Name == f.Name)
{
Is = true;
Ctl = Ctrl;
break;
}
}
if (Ctl != null)
((Form)Ctl).BringToFront();
}
if (Is == false)
{
f.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
f.Dock = DockStyle.Fill;
f.TopLevel = false;
panel1.Controls.Add(f);
f.BringToFront();
f.Show();
}
}
-این تیکه رو برام بیشتر توضیح بدید و اگر نمونه ای دارید بزارید ممنون میشم؟
ماجراش طولانیه. بذار واس بعد.
اگه مشکلی داشتی بهم بگو. موفق باشی.