c # показать / скрыть кнопку при входе администратора / пользователя - PullRequest
0 голосов
/ 19 декабря 2010

Я пишу приложение с моделью клиент-сервер.Когда клиент запустится, он покажет форму входа в систему с именем пользователя и паролем.При нажатии кнопки «Вход» клиент отправляет эти имя пользователя и пароль на сервер для проверки.Если сервер проверяет нормально, то у клиента появится mainform.мой код выглядит так:

На клиенте loginForm.cs:

if (execmd == "OK") // server sends "OK" or "FAILED" after checking authentication
    this.DialogResult = DialogResult.OK

На клиенте program.cs:

login = new loginForm();
DialogResult result = login.showDialog();
login.Dispose();
if (result != DialogResult.Cancel)
    Application.Run(new MainForm(login));

Теперь я хочу улучшить свое приложение с помощью аутентификации администратора / пользователя.В MainForm есть кнопка настройки.Если пользователи войдут в систему, эта кнопка будет скрыта.Если администратор входит в систему, то эта кнопка будет показана.С помощью приведенного выше кода, как мне сделать так, чтобы MainForm Show () или Hide () нажимали кнопку в зависимости от того, какой строковый сервер отправит после проверки аутентификации? (Например, execmd == "admin", если администратор входит в систему).

Заранее благодарим за помощь.

1 Ответ

1 голос
/ 19 декабря 2010

Сохраните существующую логику в loginForm, но добавьте тест, чтобы проверить, является ли пользователь администратором.А затем установите логическое значение в loginForm, которое указывает, является ли он администратором (что-то вроде IsAdmin).

Вы уже передаете loginForm своей MainForm, чтобы ваша MainForm могла затем проверить свойство IsAdmin, чтобы определить, является ликнопка должна отображаться.

btnSetting.Visible = login.IsAdmin;
...