C# Ajout de la liste des ensembles de valeurs de zone de liste déroulante à partir d'une forme à une autre
Je voudrais prendre les valeurs d'un tableau la liste des prises à partir d'un autre formulaire et de les ajouter à une zone de liste déroulante sur une autre forme. J'ai essayé ceci dans form2.
foreach (string fname in newname)
{
form1.comboBox1.Items.Add(fname);
}
mais il n'envoie pas les valeurs de la liste déroulante. Maintenant, si j'ajoute ce sur form1
base.AddOwnedForm(form2)
et ce sur form2
Form1 form1=(Form1)this.Owner
il fonctionne, mais form1 se cacher, et aussi de ne pas se fermer lorsque vous cliquez sur le "X" bouton. (cela semble être une propriété héritée de form2).
Toute aide serait super!
- pourquoi êtes-vous accès aux newname[x] à l'intérieur de la boucle foreach? ne pourrait-il pas être juste form1.comboBox1.Éléments.Ajouter(fname);?
- Afficher plus de code. Plus précisément, le Spectacle/ShowDialog. Je soupçonne que lorsque vous avez changé de AddOwnedForm, elle n'était plus une boîte de dialogue.
- Désolé c'était origionaly mis à form1.comboBox1.Éléments.Ajouter(fname); il a été juste en train de jouer avec elle et essayer de tout sous le soleil.
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas sûr si c'est ce que vous en avez besoin pour être. J'espère que c'est :). Je suis en train d'apprendre le C#+winforms donc j'ai traité votre question comme un exercice.
J'ai créé deux formes simples (tous les contrôles de nommage par défaut)
D'abord le code du formulaire:
Deuxième forme de code:
J'espère que le code est auto-explicatif, si non n'hésitez pas à demander. Aussi, il sera mieux si quelqu'un de plus expérimenté que moi serait de vérifier et approuver.
il est très facile lors de l'envoi de choses de parent à enfant. Comme vous la tête dans l'autre direction, vous êtes souvent préférable de mettre en place "gestion des événements" qui permet à la valeur d'être "passé".
Je ne suis pas sûr que c'est le "meilleur" tutoriel, mais il couvre "gestion des événements" à l'aide de délégués pour transmettre les informations entre les formes: http://www.codeproject.com/KB/cs/PassDataWinForms.aspx. Je pense que ce serait un bon endroit pour commencer à comprendre comment la gestion des événements fonctionne lorsque vous code vous-même plutôt que de compter sur un double clic sur un élément de formulaire dans le concepteur de bonté.