PDA

View Full Version : سوال: غیر فعال شدن موس در content panel



soleim_ah
یک شنبه 06 بهمن 1398, 22:35 عصر
بادرود
لطف کنید بفرمایید چرا اگر فرمی را با کد زیر به content panel بفرستیم کنترلهای موس فرم غیر فعال میشوند را حل
این مشکل چیست ؟

نمونه کد :

StripMenuItemOrg.BackColor = Color.WhiteSmoke;
this.toolStripContainerOrg.ContentPanel.Controls.C lear();
FormMenuItemsBackUpData fp = new FormMenuItemsBackUpData();
fp.textBoxUserCode.Text = txtbx_ck.Text;
fp.textBoxUserName.Text = txtbx_nk.Text;
fp.FormBorderStyle = FormBorderStyle.Fixed3D;
fp.TopLevel = false;
fp.WindowState = FormWindowState.Normal;
this.toolStripContainer1.ContentPanel.Controls.Add (fp);
fp.Show();

the king
دوشنبه 07 بهمن 1398, 05:48 صبح
بادرود
لطف کنید بفرمایید چرا اگر فرمی را با کد زیر به content panel بفرستیم کنترلهای موس فرم غیر فعال میشوند را حل
این مشکل چیست ؟

نمونه کد :

StripMenuItemOrg.BackColor = Color.WhiteSmoke;
this.toolStripContainerOrg.ContentPanel.Controls.C lear();
FormMenuItemsBackUpData fp = new FormMenuItemsBackUpData();
fp.textBoxUserCode.Text = txtbx_ck.Text;
fp.textBoxUserName.Text = txtbx_nk.Text;
fp.FormBorderStyle = FormBorderStyle.Fixed3D;
fp.TopLevel = false;
fp.WindowState = FormWindowState.Normal;
this.toolStripContainer1.ContentPanel.Controls.Add (fp);
fp.Show();

غیر فعال که نمیشه ولی روتین هایی که در حالت عادی و برای استفاده به عنوان یک فرم مستقل عمل می کردند با کاری که با فرم کردید سازگاری ندارند و ToolStripContainer هم طوری که با ToolStrip کار میکرد با فرم کار نمی کنه.
ایراد از اینه که از فرم و ToolStripContainer استفاده ای کردید که برای این منظور طراحی نشدن. فرم قراره به عنوان یک پنجره مستقل عمل کنه، نه داخل یک ContentPanel.
ToolStripContainer هم صرفا برای مدیریت ToolStrip و MenuStrip و StatusStrip آمادگی داره، نه فرم.
چون ContentPanel برای مدیریت و ارسال رخداد های خاص یک فرم به پنجره اش آمادگی نداره و فرم هم برای مدیریت رخداد هاش در درون ContentPanel آمادگی نداره، طوری که توقع دارید عمل نمی کنن.