Acquisition efficace de types spécifiques de sous-témoignages dans les formulaires Windows
Lors de la conception de l'application Windows Forms, vous devez souvent accéder à des sous-acaints spécifiques, tels que des boutons ou des zones de texte. Bien que l'utilisation des fonctions récursives ittera tous les contrôles semblent être une solution réalisable, il existe des méthodes plus efficaces.
Méthode 1: Type Filtrage avec le type de contrôles
La propriété Controls de la fenêtre Windows permet d'accéder à l'ensemble de tous les sous-témoins. En utilisant la méthode getType () pour un seul contrôle, vous pouvez filtrer l'ensemble pour obtenir un type de contrôle spécifique:
Cette méthode fournit un moyen rapide et concis de récupérer tous les sous-témoins correspondants.
<code class="language-vb.net">Dim ctrls() As Control ctrls = Me.Controls.OfType(GetType(TextBox)).ToArray()</code>
ou, vous pouvez utiliser la méthode d'expansion LINQ pour obtenir une plus grande flexibilité. Le code suivant démontre cette méthode:
Cette grammaire combine l'opérateur OFType avec l'expression de la requête LINQ et filtrez la collection de contrôles en fonction du type requis.Méthode 3: La fonction récursive utilisée pour les contrôles imbriqués
<code class="language-vb.net">Dim Ctrls = From ctrl In Me.Controls Where TypeOf ctrl Is TextBox</code>
Si vous avez besoin de récupérer le sous-Contree dans d'autres contrôles, vous pouvez utiliser des fonctions récursives. L'exemple de fonction suivant démontre cette méthode:
En recueillant, cette fonction traverse tous les niveaux de sous-témoins et d'écrans en fonction du type spécifié.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!