正确使用“As”子句

问题描述 投票:0回答:1

我正在使用 VB.net 并尝试完全定义变量

FoundComboBoxes
但是当我使用
As
时出现错误。

我已经尝试过

Control
,它按预期出错,
Control()
Control.ControlCollection
以及太多其他的记不清了。如果我省略
As
子句,它就会运行。

将鼠标悬停在

Find
上表示它返回“包含匹配控件的 Control 类型数组。”

Dim FoundComboBoxes As Control() = parentCtrls.Parent.Parent.Parent.Controls.Find(ThisCtrl.Name.Replace("Reqd", ""), True).OfType(Of ComboBox)

错误如下: System.InvalidCastException:“无法将类型为“d__65`1[System.Windows.Forms.ComboBox]”的对象转换为类型为“System.Array”。”

问题:

  1. 我该用什么来表示
    As
    子句?
  2. 是否有更好的方法来编写这段代码来查找名称以特定字符串开头的控件?
  3. 也许是我和其他人的低空解释器。

提前致谢。

arrays vb.net find controls
1个回答
0
投票

删除

OfType

Dim FoundComboBoxes As Control() = parentCtrls.Parent.Parent.Parent.Controls.Find(ThisCtrl.Name.Replace("Reqd", ""), True)
© www.soinside.com 2019 - 2024. All rights reserved.