Мне нужно подать заявление в школу, которое включает логин и права. Я проверяю логин и пытаюсь сохранить уровень пользователя в классе. Я пытался использовать глобальную переменную, но почему-то она не работает.
РЕДАКТИРОВАТЬ: Эта проблема частично решена. Открытие формы не. (Прочитайте последнюю часть)
Класс (уровень пользователя):
private static int ulevel = 99;
public static int gCheckLevel
{
get { return ulevel; }
set { ulevel = value; }
}
При входе в систему это произойдет:
userlevel.gCheckLevel = ulvl;
Main_MDI main = new Main_MDI();
main.mCommitRights();
Попытка открыть правильную форму после успешного входа в систему
Form start_screen_admin = new start_screen_admin();
public void mCommitRights()
{
if (userlevel.gCheckLevel == 0)
{
// Admin, no changes
MessageBox.Show("Admin");
mForms(start_screen_admin);
}
}
Но последняя часть не работает. Что я здесь не так делаю? Мне нужно сохранить уровень пользователя, потому что запросы к базе данных каждый раз, когда мне это нужно, не нужны.
EDIT:
Последняя часть не работает на 100%, глобальная работает, но mForms не работает, но она работает где-либо еще.
private void mForms(Form f)
{
if (this.MdiChildren.Contains(f)) { f.WindowState = FormWindowState.Normal; }
else { f.MdiParent = this; f.Show(); }
}