vb.net - 对于每个文本框循环

标签 vb.net

我正在尝试创建一个 foreach 循环来检查面板中的每个 TextBox,如果它的 Text 什么都没有,则更改 BackColor。我尝试了以下方法:

Dim c As TextBox
For Each c In Panel1.Controls
  if c.Text = "" Then
    c.BackColor = Color.LightYellow
  End If
Next

但我收到错误:

Unable to cast object of type System.Windows.Forms.Label to type System.windows.forms.textbox

最佳答案

你可以试试这样的:

  Dim ctrl As Control
  For Each ctrl In Panel1.Controls
  If (ctrl.GetType() Is GetType(TextBox)) Then
      Dim txt As TextBox = CType(ctrl, TextBox)
      txt.BackColor = Color.LightYellow
  End If

关于vb.net - 对于每个文本框循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13504280/

相关文章:

c# - .NET StringBuilder 前加一行

html - 我的宽度页面比我的浏览器大

vb.net - VB检查结构体的值

c# - 为什么当我使用 stringify 发布 html 时会发生此 ajax 错误

c# - VB.NET 和 C# 中的面向对象编程

mysql - 从 mySQL 中提取 COUNT(列) 到 VB.NET

c# - EF5 IQueryable 不包含 ToListAsync 的定义

c# - jquery ajax post 到 .aspx 页面加载 - 如何读取发布的变量?

vb.net - 为什么输入框让我输入两次?

vb.net - 检测 DataGridView 中其单元格值已被用户更改的行