c# - Main 是一个 'type' 但像 'variable' 一样使用

标签 c# variables types foreach

基本上,我尝试使用从 StackOverflow 找到的这段代码,它与我想要在我的 pictureBox 之间进行的一些碰撞检测相关联。但是,我遇到一个错误,指出 Form 名称是一种类型,但像变量一样使用。代码在这里:

foreach (Control PictureBox in Main)
{
    if (Player.Bounds.IntersectsWith(PictureBox.Bounds))
    {

    }
}

在 foreach 循环中。它在 Main 一词下划线,准确地说出这些词:

'Namespace.Main' is a 'type' but is used like a 'variable'

最佳答案

Main 是一个。你不能迭代一个类,你必须迭代一个对象。具体来说(在本例中),您必须遍历 Control 对象的集合。我想也许你想要:

foreach (Control pictureBox in Controls)

在这里,我正在遍历当前对象的 Controls 属性。这是假设您是从 Main 的实例内部执行此操作的。否则,您将需要引用 Form 对象并使用:

foreach (Control pictureBox in myFormObject.Controls)

关于c# - Main 是一个 'type' 但像 'variable' 一样使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23055834/

相关文章:

angular - Protractor @types 抛出很多错误

php - "Notice: Undefined variable"、 "Notice: Undefined index"、 "Warning: Undefined array key"和 "Notice: Undefined offset"使用 PHP

我可以使用两级可变长度参数函数......?

variables - Stata:通过移动后缀重命名变量

c# - .net Grpc 请求协议(protocol) 'HTTP/1.1' 不受支持

recursion - 使用递归累积列表时出现类型错误

types - Ada中的派生类型和子类型

c# - 是否有一个 C# 类用于跟踪服务方法调用,如堆栈跟踪

c# - HttpUtility 不解码 "𠮟"

c# - 在这种情况下,使用 .Net Lazy 类是否有点矫枉过正?