Crea sito

Pillole di VB.NET – Trovare Dinamicamente una Textbox Associata ad un Bottone e Scriverci Dentro

| 28 novembre 2013 | 0 Comments

Mettiamo il caso di avere 4 bottoni (ad esempio con nome da Button1 a Button4) e 4 textbox (ad esempio con nome da Textbox1 a Textbox4). Premendo uno dei bottoni vogliamo che venga scritto “OK” nella Textbox con lo stesso numero.

VBNET_Textbox_Button

' importiamo la libreria per gestire le regular expression
Imports System.Text.RegularExpressions

Public Class Form1

 ' agganciamo l'evento click sui 4 bottoni alla stessa sub
 Private Sub Button_Click(sender As Object, e As EventArgs) Handles Button1.Click, Button2.Click, Button3.Click, Button4.Click
 ' dichiariamo un oggetto bottone vuoto e lo agganciamo al bottone intercettato che ha lanciato l'evento di click
 Dim btn As Button = CType(sender, Button)
 ' ricostruiamo il name prendendo la parte comune dei name delle textbox (TextBox) e tramite l'espressione regolare catturiamo la parte numerica del name del bottone e gliela agganciamo
 Dim name As String = "TextBox" & CInt(Regex.Replace(btn.Name.ToString, "[^\d]", "")).ToString.Trim
 ' dichiariamo un oggetto textbox e tramite il CType attraverso il name cerchiamo i controlli del form con quel name (ed essendo solamente uno con quel nome per vincolo di vb) glielo assegna
 Dim txt As TextBox = CType(Me.Controls.Find(name, True)(0), TextBox)
 ' assegniamo all'oggetto txt il testo "OK"
 txt.Text = "OK"
 End Sub

End Class

P.S. lo so che l’esempio qui sopra è stupido ma il codice può essere rimaneggiato per fare cose più interessanti o risolvere problemi 😛

VN:F [1.9.22_1171]
Rating: 10.0/10 (2 votes cast)
VN:F [1.9.22_1171]
Rating: 0 (from 0 votes)
Pillole di VB.NET - Trovare Dinamicamente una Textbox Associata ad un Bottone e Scriverci Dentro, 10.0 out of 10 based on 2 ratings

Tags: , , , ,

Category: Informatica

About the Author ()

Leave a Reply