J'ai placé un formulaire MDI dans mon application. Si je sélectionne une option du menu Fichier comme Nouveau, un formulaire enfant sera chargé.Comment puis-je rendre un formulaire MDI inactif lorsque le formulaire enfant est actif
Mon code est le suivant pour montrer la forme de l'enfant
private void ShowNewForm(object sender, EventArgs e)
{
foreach (Form frm in Application.OpenForms)
{
if (frm.Text == "Main")
{
IsOpen = true;
frm.Focus();
break;
}
}
if (IsOpen == false)
{
Form childForm = new FrmMain();
childForm.MdiParent = this;
childForm.Show();
}
}
Maintenant, ce que j'ai besoin est quand la forme de l'enfant est à l'état actif je voudrais avoir mon MDI inactif jusqu'à ce que et à moins que l'utilisateur ferme l'enfant forme.
En général, pour les formes, nous allons écrire
frm.showDialog()
Alors, comment résoudre ce
Je ne comprends pas pourquoi vous avez besoin de formulaires enfants pour être MDI, lorsque vous les utilisez comme des formulaires Dialog? Pourquoi pas childForm.ShowDialog()? – veljkoz
Si j'utilise childform.showdialog() je reçois une erreur car le formulaire qui n'est pas un formulaire de niveau supérieur ne peut pas être affiché comme une boîte de dialogue modale. Supprimez le formulaire de tout formulaire parent avant d'appeler showDialog. – Dotnet
Je ne suis pas sûr que ce soit possible ou pas, mais je pense que votre conception de l'interface utilisateur est intéressante. Je n'ai vu cette approche dans aucune autre application. – anilca