Member 13975729 Ответов: 1

Как включить кнопку после закрытия for? C# .NET


private void btnSignUpOpt_Click(object sender, EventArgs e)
{
    Members aMember = new Members();
    aMember.Show();
    (sender as Button).Enabled = false;
            
}


вот как я отключаю его, но я не могу найти способ включить его после того, как я закрою форму aMember.

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

Я пытался:
btnSignUp.Enable = true;

но это заставило бы кнопку быть включенной даже если форма уже открыта

1 Ответов

Рейтинг:
2

Graeme_Grant

Есть много различных способов сделать то, что вы хотите:
1. откройте форму модально, затем код в событии button будет приостановлен до тех пор, пока вы не закроете форму aMember;
2. Включите btnSignUpOpt из события aMember close
3. перед показом передайте действие в форму aMember, а затем вызовите действие из aMember перед закрытием, где действие включает кнопку
4. прослушайте заключительное событие в форме хоста перед показом формы aMember и включите btnSignUpOpt, когда событие будет захвачено
5. и так далее...


Member 13975729

Я попробовал событие закрыть форму, но оно все еще выбрасывало исключения.
И я не смог включить кнопку из детской формы. Я попытался создать и экземпляр родительской формы для вызова кнопки, но это было невозможно.

Richard Deeming

private void btnSignUpOpt_Click(object sender, EventArgs e)
{
    Button btn = (Button)sender;
    Members aMember = new Members();
    aMember.Closed += delegate { btn.Enabled = true; };
    aMember.Show();
    btn.Enabled = false;     
}


Если вы получаете исключение, то вам необходимо предоставить полную информацию об этом исключении.

Graeme_Grant

Это другой путь ... ;)