如何使用另一个类的变量

Nis*_*sse 2 .net c# variables class visual-studio-2010

好的,我们走了.我对编程和C#有点新,但我正在学习John Sharp的Visual C#:Step By Step一书.(我想知道这个家伙的姓是真的是夏普)

无论如何,我正在尝试创建一个可以帮助我转置音符的应用程序.这是一个Windows窗体应用程序,我使用两个类:form1.cs所有代码发生,vars.cs所有变量存储.

我的问题是我想使用string vars.noteCosen并使用comboBoxNote的当前所选项目(例如C)进行定义.然而,每当我这样做时,当我执行时,vars.noteChosen = comboNote.SelectedText;我得到一个"对象引用未设置为对象的实例".错误.有任何想法吗?(comboNote是一个组合框)

这是vars.cs

namespace Transposer
{
    class vars
    {
        public static bool rbTransposeUp = true;
        public static string noteChosen = ""; //
        public static string toTranspose = ""; // 
        public static int note = 0;
        public static string boxResultText = note.ToString();
    }
}
Run Code Online (Sandbox Code Playgroud)

这是form1.cs的一部分

namespace Transposer
{
    public partial class Transposer : Form
    {
        public Transposer()
        {
            vars.noteChosen = comboNote.SelectedText;
            vars.toTranspose = comboNote.Text;
            InitializeComponent();
        }
Run Code Online (Sandbox Code Playgroud)

...

我究竟做错了什么?

And*_*nes 6

在调用之后移动行InitializeComponent();.这是创建comboNote对象的调用.

那是

    public Transposer()
    {
        InitializeComponent(); // this constructs the comboNote
        vars.noteChosen = comboNote.SelectedText;
        vars.toTranspose = comboNote.Text;
    }
Run Code Online (Sandbox Code Playgroud)