J'ai 2 formulaires, Formulaire principal & ModalBox.Utilisation d'un événement personnalisé pour dessiner des formes sous une autre forme C#
Dans la forme principale J'ai un bouton qui, lorsqu'il est cliqué, dessine une forme en fonction de l'index sélectionné de la comboBox.
// Create Rectangle or Ellipse
public void buttonAdd_Click(object sender, EventArgs e)
{
SolidBrush sb = new SolidBrush(Color.Red);
Graphics g = panel1.CreateGraphics();
if (shapeSizeControl1.comboBoxShapeSelection.SelectedIndex == 0)
{
g.FillRectangle(sb, Convert.ToSingle(shape.X), Convert.ToSingle(shape.Y), Convert.ToSingle(shape.Width), Convert.ToSingle(shape.Height));
}
else if (shapeSizeControl1.comboBoxShapeSelection.SelectedIndex == 1)
{
g.FillEllipse(sb, Convert.ToSingle(shape.X), Convert.ToSingle(shape.Y), Convert.ToSingle(shape.Width), Convert.ToSingle(shape.Height));
}
}
Dans la forme ModalBox j'ai un bouton Ok qui devrait faire la même chose que le bouton dans le formulaire principal, mais il ne fonctionne pas parce que je ne sais pas comment le programme pour le faire.
Ce que j'ai essayé ..
Copie du même code principal du formulaire buttonAdd_Click dans ModalBox buttonOk_Click. Mauvaise idée car je dois instancier un nouveau formulaire principal pour obtenir la variable panel1. Si je fais cela, rien ne se passe. Pourquoi? Je ne suis pas sûr qu'une explication serait géniale.
Création d'un événement personnalisé lors de l'ouverture du formulaire ModalBox, une fois que j'appuie sur le bouton OK depuis son abonnement Il dessine la forme. 1 problème Je n'ai aucune idée de l'endroit où appeler l'événement et vérifier null car le bouton est sur le deuxième formulaire donc Si j'appelle l'événement personnalisé dans le premier formulaire je n'ai aucun endroit pour appeler l'événement et faire la vérification nulle.
Objectif
Mon but est de savoir comment ajouter des formes dans le formulaire principal du formulaire ModalBox en utilisant le bouton Ok dans le formulaire ModalBox.
PS. Pour le faire correctement, vous devez vous abonner à l'événement 'Paint' du formulaire et faire le dessin ici. – ja72