Um ein Popup-Fenster in WPF zu öffnen und eine Liste anzuzeigen, können Sie das Element Popup
und ein Steuerelement verwenden, das die Liste enthält, z. B. ListBox
oder < /span>ListView
. Hier ist ein Beispiel:
<Grid>
<Button Content="打开弹窗" Click="Button_Click" />
<Popup x:Name="Popup" PlacementTarget="{Binding ElementName=Button}" IsOpen="False">
<Border Background="White" BorderBrush="Black" BorderThickness="1">
<ListBox ItemsSource="{Binding Items}">
<!-- 列表项的显示模板 -->
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding}" Padding="5" />
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</Border>
</Popup>
</Grid>
In diesem Beispiel haben wir ein und ein innerhalb von Grid
platziert. Das Attribut von ist auf gesetzt, wodurch das Popup relativ zur Schaltfläche positioniert wird. Button
Popup
Popup
PlacementTarget
Button
Popup
Der Inhalt von ist ein Border
, das ein ListBox
enthält, wobei ItemsSource
an eine Sammlung gebunden ist (in definiert in Ihr Datenkontext). ListBox
s ItemTemplate
definiert die Anzeigevorlage jedes Listenelements. Hier wird ein einfaches TextBlock
verwendet, um den Text der Liste anzuzeigen Artikel. .
Wenn auf die Schaltfläche geklickt wird, können wir das Popup-Fenster öffnen oder schließen, indem wir dasClick
-Ereignis im Code verarbeiten:
private void Button_Click(object sender, RoutedEventArgs e)
{
Popup.IsOpen = !Popup.IsOpen;
}
DieButton_Click
-Methode im obigen Beispiel invertiert das -Attribut von Popup
, um das Popup zu öffnen oder zu schließen. Fenstereffekt. IsOpen
Bitte beachten Sie, dass dies nur ein einfaches Beispiel ist und Sie es individuell an Ihre Bedürfnisse anpassen und gestalten können.
Hoffe das hilft!