Jetzt implementieren wir eine häufig genutzte Funktion: das dynamische Hinzufügen von Einträgen zu einem ListBox. Klicken Sie auf den Button, um ein neues Element in die Items-Sammlung der ListBox einzufügen. Diese Funktion wird in vielen Programmen eingesetzt.
Fügen Sie zuerst eine ListBox und einen Button in das XAML ein
<Border Padding="14" BorderThickness="1" BorderBrush="Gray" CornerRadius="8">
<StackPanel Spacing="12">
<TextBlock Text="5. ListBox - Liste mit fester Höhe (Einzel-/Mehrfachauswahl)" FontWeight="SemiBold" FontSize="14" Margin="0,0,0,8"/>
<Button Content="Eintrag hinzufügen" Click="Button_Click"/>
<ListBox Width="280" Height="140" x:Name="myListBox" SelectionMode="Multiple">
<ListBoxItem Content="Dokumente"/>
<ListBoxItem Content="Bilder"/>
<ListBoxItem Content="Videos"/>
<ListBoxItem Content="Audiodateien"/>
<ListBoxItem Content="Installer"/>
</ListBox>
</StackPanel>
</Border>Code-Sprache: C++ (cpp)
Wir haben einen Button ergänzt; beim Klick wird ein neuer ListBox-Eintrag erstellt. Um die ListBox im Hintergrundcode anzusprechen, vergeben wir einen Namen mit x:Name=“myListBox“.
Drücken Sie F12, um die Ereignisfunktion automatisch zu erstellen.
void winrt::App6::implementation::MainWindow::Button_Click(
winrt::Windows::Foundation::IInspectable const& sender,
winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
// Items-Sammlung der ListBox abrufen
auto itemCollection = myListBox().Items();
itemCollection.Append(box_value(L"Neuer Eintrag"));
}Code-Sprache: C++ (cpp)
In der Ereignisfunktion holen wir zuerst das Steuerelement mit x:Name=“myListBox“, rufen dessen Items-Sammlung ab und fügen mit Append neuen Inhalt an.
WinUI 3 C++ Steuerelemente – Dynamisches Hinzufügen von Items zur ListBox