MahmoudOmar Ответов: 1

У меня есть форма входа и основная форма, как я делаю кнопку enable = false, когда логин пользователя?


форма form1 LoginForm и формы Form2 есть кнопка Я хочу, чтобы эта кнопка была включена ложная...

Это код в форме входа в систему:-

s = "select Role_id from Users where User_name = '" + txt_UserName.Текст + "' и пароль = '" + txt_Password.Текст + "' и роль = 'пользователь' ";
sdAdapter = новый SqlDataAdapter(s, con);
dt = новый DataTable();
sdAdapter.Заполнение (dt);
если (ДТ.Строк.Количество = = 1)
{
строка s2 = " вставить в LoginAndOutDate(user_name, Login_Date) ";
S2 = s2 + " значения (@user_name, CURRENT_TIMESTAMP) ";

if (con. State == ConnectionState.Закрытый)
против.Открыть();

using (sCommand = new SqlCommand(s2, con))
{
скоманд.Параметры.AddWithValue ("@user_name", txt_UserName. Text);
скоманд.Метод executenonquery();
}

if (con. State == ConnectionState.Открыть)
против.Закрывать();

этот.Скрыть();
FRM_Main frm = new FRM_Main(txt_UserName. Text);
ФРМ.RefToFormLogin = это;
ФРМ.Показать();
txt_Password.Четкий();

Что я уже пробовал:

Как я делаю кнопку enabled = false из другой формы

Richard Deeming

Кроме того, никогда не храните пароли в виде обычного текста. Храните только соленый хэш пароля, используя уникальную соль для каждой записи.

Безопасная Аутентификация Паролем Объясняется Просто[^]
Соленое хеширование паролей - все правильно[^]

1 Ответов

Рейтинг:
11

OriginalGriff

Самый простой способ-добавить второй параметр в конструктор формы:

public FRM_Main(string userName, bool enableMyButton)
   {
   InitializeComponent();
   ...
   myButton.Enabled = enableMyButton;
   }
А затем передайте соответствующее значение при создании экземпляра формы.


MahmoudOmar

Как я передаю этот параметр в форму входа, потому что я делаю это, но он не работает

OriginalGriff

Покажите точно код, который вы использовали в конструкторе и при создании экземпляра.

MahmoudOmar

спасибо я нашел свою ошибку и она работает знаете :)

OriginalGriff

Отлично!