为了账号安全,请及时绑定邮箱和手机立即绑定

尽管将 IsDeleteble 属性设置为“IsDeletable = true”,但我无法删除芯片

尽管将 IsDeleteble 属性设置为“IsDeletable = true”,但我无法删除芯片

C#
忽然笑 2022-12-24 10:58:59
尽管将 IsDeletable 属性设置为 IsDeletable=True,但我一直单击芯片删除图标但没有任何反应。如何删除芯片点击删除图标?主窗口.xaml    <StackPanel Orientation="Horizontal" x:Name="addchip">        <Button Click="create_chip">delete_chip</Button>        <materialDesign:Chip  Content="Example Chip"  ToolTip="This is an example chip" IsDeletable="True"/>    </StackPanel>主窗口.xaml.cspublic partial class MainWindow : Window{    public MainWindow()    {        InitializeComponent();    }    private void deletenotify(object sender, RoutedEventArgs e)    {        Debug.WriteLine("delete!");    }    private void create_chip(object sender, RoutedEventArgs e)    {        Chip a = new Chip();        a.Content = "Example Chip";        a.IsDeletable =true ;        a.DeleteClick += deletenotify;        addchip.Children.Add(a);    }}
查看完整描述

1 回答

?
温温酱

TA贡献1752条经验 获得超4个赞

试试这个:

输出:

https://i.stack.imgur.com/sg0v2.gif

Xaml:


<Window x:Class="TestChipDeleting.MainWindow"

        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

        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"

        mc:Ignorable="d"

        Title="MainWindow" 

        Height="400" 

        Width="300"

        Loaded="MainWindow_OnLoaded">

    <Grid>

        <ItemsControl Name="UsersListBox">


        </ItemsControl>

    </Grid>

</Window>

C#:


using System.Windows;

using MaterialDesignThemes.Wpf;


namespace TestChipDeleting

{

    public partial class MainWindow

    {

        public MainWindow()

        {

            InitializeComponent();

        }


        private void MainWindow_OnLoaded(object sender, RoutedEventArgs e)

        {

            BindUsers();

        }


        private void Chip_OnDeleteClick(object sender, RoutedEventArgs e)

        {

            var currentChip = (Chip) sender;

            UsersListBox.Items.Remove(currentChip);

        }


        private void BindUsers()

        {

            for (var i = 0; i < 10; i++)

            {

                var chip = new Chip {IsDeletable = true};

                chip.DeleteClick += Chip_OnDeleteClick;

                chip.Content = "Username" + i;

                chip.Icon = i;

                UsersListBox.Items.Add(chip);

            }

        }



    }

}


查看完整回答
反对 回复 2022-12-24
  • 1 回答
  • 0 关注
  • 54 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信