Выполнить метод On-Load объекта на форме в C # - PullRequest
0 голосов
/ 04 июня 2011

например. вместо того, чтобы иметь кнопку для запуска метода, метод автоматически происходит без какого-либо взаимодействия с пользователем - автоматически.

private void button13_Click(object sender, EventArgs e)
{
    try
    {
        ServiceController sc = new ServiceController();
        sc.ServiceName = "Spooler";

        if (sc.Status.ToString().ToLower() == "stopped")
        {
            serviceStatusLabel.Text = "Installed but stopped";
        }

        if (sc.Status.ToString().ToLower() == "running")
        {
            serviceStatusLabel.Text = "Installed and started";
        }
    }
    catch
    {
        serviceStatusLabel.Text = "Service not installed";
    }
}

Я просто хочу, чтобы объект Label отображал состояние службы при загрузке формы без использования кнопки

Ответы [ 3 ]

3 голосов
/ 04 июня 2011

РЕДАКТИРОВАТЬ: Учитывая ваш комментарий, вы на самом деле после события Form.Load? Похоже на это. Любые обработчики событий, подписанные на это событие, будут выполняться «при первом отображении формы».

(сбивает с толку то, что ваш заголовок говорит о «On-Load» объекта , тогда как звучит так, будто вы действительно хотите, чтобы метод вызывался при загрузке формы .)


Не совсем понятно, что вы подразумеваете под "когда выводится на форму", но вы можете посмотреть на TextChanged и VisibleChanged события. Это если вы хотите, чтобы что-то произошло, когда метка была изменена.

Если вы ищете, когда служба status изменяется, я не боюсь, что для этого возникло событие. Обратите внимание, что было бы намного чище, чтобы включить значение перечисления, а не преобразовать его в строку, уменьшить его, а затем сравнить с жестко закодированными константами.

0 голосов
/ 04 июня 2011

... Я правильно понял ваш вопрос? Вы хотите, чтобы часть кода выполнялась при загрузке объекта или формы? Ну, это просто: p

Нажмите на свой объект (или форму) в конструкторе, в панели свойств щелкните значок молнии, перейдите к событию Загрузка или Показать и дважды щелкните коробка. Теперь в представлении кода должен быть создан новый фрагмент кода, примерно такой:

private void Object_Load(blabla) handles Object.Load
{
}

Какой бы код в этом событии не выполнялся, когда объект загружается или отображается.

0 голосов
/ 04 июня 2011

Если вы создадите обработчик для события Load , он запустится, когда форма загрузится.

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