Como: Feche as caixas de diálogo e reter a entrada do usuário
Você pode definir a maneira como que uma caixa de diálogo é fechada no tempo de design ou tempo de execução. Em tempo de design, você pode definir a property DialogResult para todos os controles Button numa caixa de diálogo. Em tempo de execução, você pode definir a property DialogResult portanto, você pode manipular dinamicamente as respostas do usuário.
Observação |
---|
As caixas de diálogo e comandos de menu demonstradas podem ser diferentes daqueles descritos na Ajuda, dependendo das configurações ativas ou configurações de edição. Para alterar as configurações, escolha Import and Export Settings sobre o Ferramentas menu. Para obter mais informações, consulte Trabalhando com configurações. |
Para definir a property DialogResult para um controle em tempo de design
Clique no controle Button para o qual você deseja definir a property.
Na janela Properties,selecione a property DialogResult e abra a lista das configurações de propriedades disponíveis.
Selecione a caixa de diálogo com o resultado apropriado.
Você pode definir a caixa de diálogoo com o resultado de ações executadas pelo usuário diferente clicando em um controle Button. Se sua caixa de diálogo não contém botões para fechar a caixa de diálogo, você pode definir o resultado da caixa de diálogo em tempo de execução.
Para definir a propriedade DialogResult para um controle ou formulário programáticamente
Navegue para o manipulador de eventos ou método que você deseja definir a property DialogResult.
Autor do código semelhante ao exemplo de código a seguir.
Public Sub InformationProcessed() ' This code will set the DialogResult for a form. Me.DialogResult = DialogResult.Yes ' OR ' This code will set the DialogResult for a button. Button1.DialogResult = DialogResult.No End Sub
private void InformationProcessed() { // This code will set the DialogResult for a form. DialogResult = DialogResult.Yes; // OR // This code will set the DialogResult for a button. button1.DialogResult = DialogResult.No; }
private: void InformationProcessed() { // This code will set the DialogResult for a form. this->DialogResult = DialogResult::Yes; // OR // This code will set the DialogResult for a button. button1->DialogResult = DialogResult::No; }
Embora a configuração da property DialogResult fará com que a caixa de diálogo feche automaticamente, você ainda pode manipular o controle de evento Click e a caixa de diálogo será fechada depois que o manipulador de eventos do código for concluído. Ao manipular o evento Click, convém interromper o fechamento da caixa de diálogo.
Para inpedir a property DialogResult de fechar a caixa de diálogo
Na manipulador de eventos, o autor do código é semelhante ao exemplo de código a seguir.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.DialogResult = DialogResult.None End Sub
private void button1_Click(object sender, System.EventArgs e) { DialogResult = DialogResult.None; }
private: void button1_Click(System::Object ^ sender, System::EventArgs ^ e) { this->DialogResult = DialogResult::None; }
Observação Você também pode usar o evento Closing do formulário para interromper o fechamento de um caixa de diálogo.
Consulte também
Tarefas
Como: Criar caixas de diálogo em tempo de Design
Como: Recuperar o resultado para caixas de diálogo
Conceitos
Entrada de Usuário em Caixas de Diálogo