Ich habe eine Reihe von Schaltflächen, die durch Code erstellt werden. Der Grund dafür ist, dass sich die Anzahl der Schaltflächen ändern kann. In diesem Fall versuche ich, Schaltflächen zu erstellen, die als Tage eines Monats in einem Kalender angezeigt werden, und der Betrag kann nicht in a sein Setzen Sie Betrag, denn wenn die Menge der Schaltflächen für Februar erstellt wurden, wäre der Betrag entweder 28 oder 29.Umgang mit Klickereignissen für dynamisch erstellte Schaltflächen im Array
Ich habe dies getan, wie ich will, aber das Problem kommt mit einem Klick-Ereignis für jeden zu behandeln Taste. Da ich im folgenden Beispiel nach der allgemeinen Idee suche, wie mit einem Klick-Ereignis umgegangen werden soll, möchte ich eine Messagebox erstellen, was der Inhalt für die Schaltfläche ist.
Dim btns(Date.DaysInMonth(CurrentYear, CurrentMonth) - 1) As Button
For ButtonCount As Integer To btns.Length
btns(ButtonCount) = New Button With {.Content = ButtonCount}
'Handler goes here.
Next
Die Art und Weise, dass ich diese Tasten einzeln Referenz durch btns (Button) ist, ich nenne sie nicht.
Gibt es eine Möglichkeit, ein Klickereignis zu diesen Schaltflächen hinzuzufügen, die im Beispiel erstellt wurden?
Werfen Sie einen Blick auf die 'AddHandler' und' RemoveHandler' Aussagen. Sie können sie dynamisch verwenden. https://msdn.microsoft.com/en-us/library/7taxzxka.aspx – Dabblernl
Sie müssen 'btns.Length - 1' in Ihrem Loop pr aufrufen, sonst erhalten Sie eine Ausnahme. –