繁体   English   中英

为什么没有看到我的新对象? C#

[英]Why isn't my new object being seen? C#

我准备在C#的大学里上课。 我已经阅读了很多,决定开始一个有趣的项目。

这是我的项目组成的:

  • 主控制表
  • 配置表
  • Arduino的

Program.cs在开始时调用Configuration.cs 在此处设置Arduino的引脚模式并设置计时器。 当我设置这些值时,它们将被发送到MainControl.cs 当我在Configuration.cs中单击“保存”按钮时,将创建一个MainControl.cs对象[[我说的对吗?]

Configuration.cs发送的所有这些值都有相应的设置程序,这些设置程序在MainControl.cs中设置了私有静态变量[[我真的不知道这是否是首选方法,我绝对可以接受任何人提出的任何建议]]

MainControl.cs使用其默认构造函数,该构造函数调用一个方法,该方法从一个私有变量(serialPort)中创建一个arduino对象[[使用此Arduino类Firmata.NET ]]

创建arduino对象时,我知道(我想是的),因为表单需要几秒钟的时间(而不是不使用串行端口),我的问题是:

我不明白为什么什么都看不到物体

我一直很罗word,如果我不简洁,我深表歉意。 这是代码:

public partial class CMainControl : Form
{
       private static string serialPort;
        public CMainControl()
    {
        InitializeComponent();
        createArduino();
        updateConfig();  // Change label values to values set in configuration
    }

    private void createArduino()
    {
        Arduino arduino = new Arduino(serialPort);
    }

Configuration.cs中 ,当我通过组合框设置串行端口时,该值发送到MainControl.cs就好了。

这是我得到的错误:

错误1名称'arduino'在当前上下文中不存在C:\\ Programming \\ Visual Studio \\ Workhead Demo \\ Workhead Demo \\ CMainControl.cs 94 13 Workhead演示

请让我知道是否有人可以帮助和/或提供指示,并且如果我没有正确发布或格式化任何内容,请让我知道。

非常感谢你 :)

尝试将Arduino变量定义为CMainControl类中的字段。

public partial class CMainControl : Form
{
   private Arduino arduino;
   private static string serialPort;

    private void createArduino()
    {
        arduino = new Arduino(serialPort);
    }

我正在猜测,因为不确定我是否会完全遵循,但是我猜测是因为您的arduino对象在create方法中本地声明,并且该方法之外的任何人都无法访问。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM