Form.ShowDialog Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Geeft het formulier weer als een modaal dialoogvenster.
Overloads
| Name | Description |
|---|---|
| ShowDialog() |
Geeft het formulier weer als een modaal dialoogvenster. |
| ShowDialog(IWin32Window) |
Geeft het formulier weer als een modaal dialoogvenster met de opgegeven eigenaar. |
ShowDialog()
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
Geeft het formulier weer als een modaal dialoogvenster.
public:
System::Windows::Forms::DialogResult ShowDialog();
public System.Windows.Forms.DialogResult ShowDialog();
member this.ShowDialog : unit -> System.Windows.Forms.DialogResult
Public Function ShowDialog () As DialogResult
Retouren
Een van de DialogResult waarden.
Uitzonderingen
Het weergegeven formulier is al zichtbaar.
– of –
Het weergegeven formulier is uitgeschakeld.
– of –
Het weergegeven formulier is geen venster op het hoogste niveau.
– of –
Het formulier dat als dialoogvenster wordt weergegeven, is al een modaal formulier.
– of –
Het huidige proces wordt niet uitgevoerd in de interactieve modus van de gebruiker (zie UserInteractivevoor meer informatie).
Voorbeelden
In het volgende voorbeeld wordt een formulier weergegeven als een modaal dialoogvenster en wordt de retourwaarde van het dialoogvenster geëvalueerd voordat wordt bepaald of de waarde van een TextBox besturingselement in het dialoogvensterformulier moet worden gelezen. Voor dit voorbeeld is vereist dat een Form benoemde naam testDialog wordt gemaakt en dat deze een besturingselement met de TextBox naam TextBox1bevat. Bovendien vereist het voorbeeld dat code in dit voorbeeld is opgenomen en wordt aangeroepen vanuit een ander Form om weer te geven testDialog als een modaal dialoogvenster. In het voorbeeld wordt de versie van ShowDialog die versie gebruikt waarmee een eigenaar voor het dialoogvenster wordt opgegeven.
void ShowMyDialogBox()
{
Form2^ testDialog = gcnew Form2;
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if ( testDialog->ShowDialog( this ) == ::DialogResult::OK )
{
// Read the contents of testDialog's TextBox.
this->txtResult->Text = testDialog->TextBox1->Text;
}
else
{
this->txtResult->Text = "Cancelled";
}
delete testDialog;
}
public void ShowMyDialogBox()
{
Form2 testDialog = new Form2();
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if (testDialog.ShowDialog(this) == DialogResult.OK)
{
// Read the contents of testDialog's TextBox.
this.txtResult.Text = testDialog.TextBox1.Text;
}
else
{
this.txtResult.Text = "Cancelled";
}
testDialog.Dispose();
}
Public Sub ShowMyDialogBox()
Dim testDialog As New Form2()
' Show testDialog as a modal dialog and determine if DialogResult = OK.
If testDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
' Read the contents of testDialog's TextBox.
txtResult.Text = testDialog.TextBox1.Text
Else
txtResult.Text = "Cancelled"
End If
testDialog.Dispose()
End Sub
Opmerkingen
U kunt deze methode gebruiken om een modaal dialoogvenster in uw toepassing weer te geven. Wanneer deze methode wordt aangeroepen, wordt de volgende code pas uitgevoerd nadat het dialoogvenster is gesloten. Aan het dialoogvenster kan een van de waarden van de DialogResult opsomming worden toegewezen door het toe te wijzen aan de DialogResult eigenschap van een Button op het formulier of door de DialogResult eigenschap van het formulier in code in te stellen. Deze waarde wordt vervolgens geretourneerd door deze methode. U kunt deze retourwaarde gebruiken om te bepalen hoe u de acties verwerkt die zijn opgetreden in het dialoogvenster. Als het dialoogvenster bijvoorbeeld is gesloten en de DialogResult.Cancel waarde via deze methode heeft geretourneerd, kunt u voorkomen dat code na de aanroep wordt ShowDialog uitgevoerd.
Wanneer een formulier wordt weergegeven als een modaal dialoogvenster, klikt u op de knop Sluiten (de knop met een X in de rechterbovenhoek van het formulier) zorgt ervoor dat het formulier wordt verborgen en de DialogResult eigenschap wordt ingesteld op DialogResult.Cancel. In tegenstelling tot niet-modale formulieren wordt de methode Close niet aangeroepen door het .NET Framework wanneer de gebruiker op de knop Formulier sluiten van een dialoogvenster klikt of de waarde van de eigenschap DialogResult instelt. In plaats daarvan is het formulier verborgen en kan het opnieuw worden weergegeven zonder een nieuw exemplaar van het dialoogvenster te maken. Omdat een formulier dat wordt weergegeven als een dialoogvenster verborgen is in plaats van gesloten, moet u de Dispose methode van het formulier aanroepen wanneer het formulier niet meer nodig is voor uw toepassing.
Deze versie van de ShowDialog methode geeft geen formulier of besturingselement op als eigenaar. Wanneer deze versie wordt aangeroepen, wordt het momenteel actieve venster de eigenaar van het dialoogvenster gemaakt. Als u een specifieke eigenaar wilt opgeven, gebruikt u de andere versie van deze methode.
Zie ook
Van toepassing op
ShowDialog(IWin32Window)
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
- Bron:
- Form.cs
Geeft het formulier weer als een modaal dialoogvenster met de opgegeven eigenaar.
public:
System::Windows::Forms::DialogResult ShowDialog(System::Windows::Forms::IWin32Window ^ owner);
public System.Windows.Forms.DialogResult ShowDialog(System.Windows.Forms.IWin32Window owner);
public System.Windows.Forms.DialogResult ShowDialog(System.Windows.Forms.IWin32Window? owner);
member this.ShowDialog : System.Windows.Forms.IWin32Window -> System.Windows.Forms.DialogResult
Public Function ShowDialog (owner As IWin32Window) As DialogResult
Parameters
- owner
- IWin32Window
Elk object dat wordt geïmplementeerd IWin32Window voor het venster op het hoogste niveau dat eigenaar is van het modale dialoogvenster.
Retouren
Een van de DialogResult waarden.
Uitzonderingen
Het formulier dat is opgegeven in de owner parameter, is hetzelfde als het formulier dat wordt weergegeven.
Het weergegeven formulier is al zichtbaar.
– of –
Het weergegeven formulier is uitgeschakeld.
– of –
Het weergegeven formulier is geen venster op het hoogste niveau.
– of –
Het formulier dat als dialoogvenster wordt weergegeven, is al een modaal formulier.
– of –
Het huidige proces wordt niet uitgevoerd in de interactieve modus van de gebruiker (zie UserInteractivevoor meer informatie).
Voorbeelden
In het volgende voorbeeld wordt een formulier weergegeven als een modaal dialoogvenster en wordt de retourwaarde van het dialoogvenster geëvalueerd voordat wordt bepaald of de waarde van een TextBox besturingselement in het dialoogvensterformulier moet worden gelezen. Voor dit voorbeeld is vereist dat een Form benoemde naam Form2 wordt gemaakt en dat deze een besturingselement met de TextBox naam TextBox1bevat. In het voorbeeld wordt de versie van ShowDialog die versie gebruikt waarmee een eigenaar voor het dialoogvenster wordt opgegeven.
void ShowMyDialogBox()
{
Form2^ testDialog = gcnew Form2;
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if ( testDialog->ShowDialog( this ) == ::DialogResult::OK )
{
// Read the contents of testDialog's TextBox.
this->txtResult->Text = testDialog->TextBox1->Text;
}
else
{
this->txtResult->Text = "Cancelled";
}
delete testDialog;
}
public void ShowMyDialogBox()
{
Form2 testDialog = new Form2();
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if (testDialog.ShowDialog(this) == DialogResult.OK)
{
// Read the contents of testDialog's TextBox.
this.txtResult.Text = testDialog.TextBox1.Text;
}
else
{
this.txtResult.Text = "Cancelled";
}
testDialog.Dispose();
}
Public Sub ShowMyDialogBox()
Dim testDialog As New Form2()
' Show testDialog as a modal dialog and determine if DialogResult = OK.
If testDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK Then
' Read the contents of testDialog's TextBox.
txtResult.Text = testDialog.TextBox1.Text
Else
txtResult.Text = "Cancelled"
End If
testDialog.Dispose()
End Sub
Opmerkingen
U kunt deze methode gebruiken om een modaal dialoogvenster in uw toepassing weer te geven. Wanneer deze methode wordt aangeroepen, wordt de volgende code pas uitgevoerd nadat het dialoogvenster is gesloten. Aan het dialoogvenster kan een van de waarden DialogResult worden toegewezen door het toe te wijzen aan de DialogResult eigenschap van een Button formulier of door de DialogResult eigenschap van het formulier in code in te stellen. Deze waarde wordt vervolgens geretourneerd door deze methode. U kunt deze retourwaarde gebruiken om te bepalen hoe u de acties verwerkt die zijn opgetreden in het dialoogvenster. Als het dialoogvenster bijvoorbeeld is gesloten en de DialogResult.Cancel waarde via deze methode heeft geretourneerd, kunt u voorkomen dat code na de aanroep wordt ShowDialog uitgevoerd.
Wanneer een formulier wordt weergegeven als een modaal dialoogvenster, klikt u op de knop Sluiten (de knop met een X in de rechterbovenhoek van het formulier) zorgt ervoor dat het formulier wordt verborgen en de DialogResult eigenschap wordt ingesteld op DialogResult.Cancel. In tegenstelling tot modeloze formulieren wordt de methode Close niet aangeroepen door het .NET Framework wanneer de gebruiker op de knop Formulier sluiten van een dialoogvenster klikt of de waarde van de eigenschap DialogResult instelt. In plaats daarvan is het formulier verborgen en kan het opnieuw worden weergegeven zonder een nieuw exemplaar van het dialoogvenster te maken. Omdat een formulier dat wordt weergegeven als een dialoogvenster verborgen is in plaats van gesloten, moet u de Dispose methode van het formulier aanroepen wanneer het formulier niet meer nodig is voor uw toepassing.
Met deze versie van de ShowDialog methode kunt u een specifiek formulier opgeven dat eigenaar is van het dialoogvenster dat wordt weergegeven.