Доступ к переменным в других функциях в C# - PullRequest
0 голосов
/ 18 апреля 2020

Я недавно установил Visual Studio Code на мой Raspberry Pi (или Code-OSS от headmelted) и «связал» его с mono для создания и запуска приложения WinForms. Однако я всегда использую Visual Studio для создания приложений WinForms и не знаю, как добавить кнопки и метки в приложение WinForms. Я живу в Китае и не имею доступа к Google или YouTube. Я попытался выполнить поиск в Bing, но большинство веб-сайтов заблокированы.

EDIT : я успешно создал окно, но не могу получить к нему доступ в других функции ... Код:

using System;
using System.Drawing;
using System.Windows.Forms;

public class Program
{
    [STAThread]
    private static void clicked(object sender, EventArgs e){
        password = textbox.Text;
        if(password == "mypassword"){
            stateLabel.Text = "Password is correct";
        }else{
            stateLabel.Text = "Password is incorrect";
        }
    }
    public static void Main()
    {
        var window = new Form();
        window.Text = "Login";
        window.Height = 130;
        window.Width = 365;
        TextBox textbox = new TextBox();
        Label passwordLabel = new Label();
        Button passwordButton = new Button();
        Label stateLabel = new Label();

        stateLabel.Text = "Please enter your password";
        passwordLabel.Text = "Password";
        passwordButton.Text = "Login";

        passwordLabel.Location = new Point(25, 30);
        textbox.Location = new Point(125, 25);
        passwordButton.Location = new Point(260, 25);
        stateLabel.Location = new Point(125, 60);
        passwordButton.Click += new System.EventHandler(clicked);

        window.Controls.Add(textbox);
        window.Controls.Add(passwordLabel);
        window.Controls.Add(passwordButton);
        window.Controls.Add(stateLabel);
        Application.Run(window);
    }
}

Когда я запускаю его, он просто выдает ошибку, в которой говорится, что "окно" не определено в нажатой функции.

1 Ответ

1 голос
/ 18 апреля 2020

Вы можете добавить элементы управления для программной формы, создав экземпляр этого элемента управления и добавив его в Controls collection

TextBox textbox = new TextBox();
textbox.Location = new Point(25,25);
this.Controls.Add (textbox);

Аналогичным образом можно добавить другие элементы управления.

Чтобы узнать больше об этом, вы также можете проверить этот документ Microsoft

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...