Come trovare tutti i controlli TextBox sul Codice pagina ASP.NET

July 11

collezioni ASP.NET offrono agli sviluppatori la possibilità di trovare e manipolare tutti i controlli in una pagina Web. controlli di input, come caselle di testo consentono agli utenti di comunicare con le pagine Web per l'immissione di testo. Se l'applicazione ha bisogno di trovare tutte le caselle di testo in una pagina web al fine di modificare le loro proprietà, in qualche modo, si può farlo scorrendo tutti i controlli della collezione "Controlli". Dopo aver trovato le caselle di testo, è possibile manipolare alterando i loro attributi fisici e anche cambiando il loro testo.

istruzione

1 Avviare la vostra copia di Visual Studio, e aprire un progetto ASP.NET scritta in VB.NET. Visual Studio metterà forme e dei file del progetto in Esplora soluzioni.

2 Fare clic sulla voce di menu "Sito", e quindi fare clic su "Aggiungi nuovo elemento" per aprire il "Nuovo Aggiungi elemento" schermo.

3 Fare clic sull'icona "Web Form" per selezionarlo, e quindi digitare "NewForm1" nella casella di testo "Nome". Visual Studio aggiunge un nuovo modulo Web denominato "NewForm1" per Esplora soluzioni del progetto in cui i file del progetto risiedono. codice predefinito HTML del modulo viene visualizzato nella finestra del codice.

4 Fare clic sul pulsante "Design" per passare alla visualizzazione struttura e trascinare due controlli "TextBox" dalla casella degli strumenti nel form. Trascinare un controllo "Button" dalla casella degli strumenti al form pure. I nomi di Visual Studio il pulsante sul modulo "Button1".

5 Fare doppio clic su "Button1" per visualizzare sub "Button1_Click" del pulsante. Aggiungere il seguente codice a questo sub:

GetTextboxes ()

Ciò richiede un sub di nome "GetTextboxes" quando gli utenti fanno clic "Button1".

6 Aggiungere la seguente Sub sotto il sub "Button1_Click" descritto nel passaggio precedente:

GetTextboxes Private Sub ()

Dim textBoxString As String

textBoxString = "System.Web.UI.WebControls.TextBox"

Per ogni control1 In Page.Controls

Se control1.Controls.Count> 0 Then

Per ogni control2 In control1.Controls

Se control2.GetType.ToString = textBoxString Poi

Dim currentTextBox come nuovo TextBox ()

currentTextBox = CType (control2, TextBox)

currentTextBox.Text = "Nuovo testo"

currentTextBox.BackColor = System.Drawing.Color.Yellow

Finisci se

Il prossimo

Finisci se

Il prossimo

End Sub

Questo sub loop attraverso la raccolta di controllo della pagina Web. Questa collezione si compone di tutti i controlli sulla pagina. Un ciclo interno controlla ciascuno di questi controlli per eventuali controlli figlio. Quando il codice trova un "TextBox" controllo, memorizza che controllano nella variabile denominata "currentTextBox." In questo esempio, il codice imposta allora che del controllo "Testo" proprietà "Nuovo testo" e il suo colore di sfondo "Giallo".

7 Premere il tasto "F5" per avviare il progetto. Il browser si apre e visualizza due caselle di testo vuote e un pulsante. Fare clic sul pulsante. Il codice viene eseguito e trova tutte le caselle di testo. Come li trova, cambia il colore di sfondo al giallo ed i loro valori di testo per "Nuovo testo".

Consigli e avvertenze

  • Il codice in questo esempio viene cercata caselle di testo e altera alcune proprietà fisiche delle caselle di testo che trova. Il vostro bisogno di programmazione determinerà le modifiche effettive il codice farà alle caselle di testo come li trova. Si può semplicemente voler impostare loro di sola lettura o applicare un attributo di stile diverso, come ad esempio un bordo. Fare che cambiando le proprietà della variabile "currentTextBox". Ad esempio, per cambiare il colore del bordo per tutte le caselle di testo a verde, aggiungere la seguente istruzione al "GetTextboxes" sub: currentTextBox.BorderColor = System.Drawing.Color.Green.