下面我们来做一个常用的功能,就是往一个ListBox的项中动态添加,点击按钮,往ListBox的Items中插入新的项目,这个功能应该在很多软件中都有用到了。
首先在xaml中添加一个ListBox 和一个按钮
<Border Padding="14" BorderThickness="1" BorderBrush="Gray" CornerRadius="8">
<StackPanel Spacing="12">
<TextBlock Text="5. ListBox - Fixed Height Single/Multi Select List" FontWeight="SemiBold" FontSize="14" Margin="0,0,0,8"/>
<Button Content="Add Item" Click="Button_Click"/>
<ListBox Width="280" Height="140" x:Name="myListBox" SelectionMode="Multiple">
<ListBoxItem Content="Documents"/>
<ListBoxItem Content="Pictures"/>
<ListBoxItem Content="Videos"/>
<ListBoxItem Content="Audios"/>
<ListBoxItem Content="Installers"/>
</ListBox>
</StackPanel>
</Border>Code language: C++ (cpp)
我们添加了一个按钮,然后点击按钮的时候,添加新的ListBox的Item,为了方便后台操作ListBox,需要给它一个名字,x:Name=”myListBox”
按住F12创建事件函数。
void winrt::App6::implementation::MainWindow::Button_Click(
winrt::Windows::Foundation::IInspectable const& sender,
winrt::Microsoft::UI::Xaml::RoutedEventArgs const& e)
{
// get ListBox‘s Items
auto itemCollection = myListBox().Items();
itemCollection.Append(box_value(L"New Item"));
}Code language: C++ (cpp)
在事件函数中,先获取到x:Name=”myListBox”的对象,然后获取Items,然后再往这个items中追加内容Append
Previous: WinUI 3 C++ 控件篇-选择与开关控件