Un contrôle de la mienne a une propriété List<Point>
qui doit être définie lorsque ce contrôle est construit. Les Point
individuels doivent provenir de clics de souris sur le formulaire et cela doit se produire dans le mode Création de Visual Studio. Maintenant, mon idée était d'ouvrir un nouveau formulaire à chaque fois que ce contrôle est créé, ce qui dupliquerait le formulaire original, et sur le nouveau formulaire je pourrais cliquer sur un bit, enregistrer les points, les ajouter à la liste et fermer le nouveau Forme quand j'ai fini. Mais je ne peux pas sembler appliquer les propriétés originales de Formulaires au nouveau et je suppose que c'est parce que cela ne se produit pas pendant l'exécution.Définition d'une propriété personnalisée d'un contrôle personnalisé via la souris sur Form (dans DesignMode)
C'est ce que j'ai jusqu'à présent (je sais que ce n'est pas beaucoup, son sur le principe):
Afficher un nouveau formulaire lorsque la commande est créé:
Public Sub New()
InitializeComponent()
Dim myForm As Form = Me.FindForm()
Dim newForm As New newForm(myForm)
scrInput.Show()
End Sub
Le nouveau formulaire :
Public Class SourceForm
Private additionlHeight As Integer = 50
Public Sub New(ScrSource As Form)
InitializeComponent()
Me.Height = ScrSource.Height + additionlHeight
Me.Width = ScrSource.Width
Me.BackColor = ScrSource.BackColor
End Sub
End Class
Aucune hauteur à jour, la largeur ou la couleur d'arrière-plan pour être vu sur la nouvelle forme ... Une idée?
Essayez 'Me.Refresh()' après avoir défini Height, Width et BackColor. Si cela ne fonctionne toujours pas, ajoutez 'Application.DoEvents()'. Ou ajoutez une variable de classe 'ScrSource' dans votre SoruceForm et définissez-la dans le constructeur. Mais au lieu d'ajuster les propriétés dans le constrcutor, définissez Height, Width et BackColor dans l'événement 'Load' de SoruceForm. –
Tout d'abord, cela ressemble à un UserControl et non à un contrôle personnalisé. Si vous définissez correctement la propriété 'List (Of Point)', VS/IDE lancera l'éditeur de collection pour vous. – Plutonix
@ Alex B. a fait tout ce que vous avez suggéré, mais cela ne fonctionne toujours pas. @ Plutonix Désolé, je ne savais pas qu'il y avait une différence entre les deux. Il me montre en effet l'éditeur de collection, mais cet éditeur n'effectue pas ce dont j'ai besoin (enregistrement de points par clic de souris). Merci pour votre aide de toute façon! – ziggystardust