ImageList.axaml代码
<Window xmlns="https://github.com/avaloniaui" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" Height="300" Width="300" x:Class="AvaloniaUI.ImageList" Title="ImageList"> <ListBox Margin="5" SelectionMode="Multiple" Name="lst" SelectionChanged="lst_SelectionChanged"> <StackPanel Orientation="Horizontal"> <Image Source="avares://AvaloniaUI/Resources/Images/happyface.jpg" Width="30" Height="30"></Image> <Label VerticalContentAlignment="Center">A happy face</Label> </StackPanel> <StackPanel Orientation="Horizontal"> <Image Source="avares://AvaloniaUI/Resources/Images/redx.jpg" Width="30" Height="30"></Image> <Label VerticalContentAlignment="Center">A warning sign</Label> </StackPanel> <StackPanel Orientation="Horizontal"> <Image Source="avares://AvaloniaUI/Resources/Images/happyface.jpg" Width="30" Height="30"></Image> <Label VerticalContentAlignment="Center">A happy face</Label> </StackPanel> </ListBox> </Window>
ImageList.axaml.cs代码
using Avalonia;
using Avalonia.Controls;
using Avalonia.Markup.Xaml;
using System;
namespace AvaloniaUI;
public partial class ImageList : Window
{
public ImageList()
{
InitializeComponent();
}
private void lst_SelectionChanged(object? sender, SelectionChangedEventArgs e)
{
var listBox = sender as ListBox;
var selectedItem = listBox?.SelectedItem as StackPanel;
if (selectedItem != null)
{
Console.WriteLine($"Selected: {selectedItem}");
}
}
}
运行效果

浙公网安备 33010602011771号