从子级增加添加或删除操作,以在父级StackPanel中添加或删除元素

问题描述 投票:-2回答:1

我正在使用C#和WPF创建具有两个按钮的元素:(+)和(-)

此元素是主窗口中堆栈面板的子元素。

我需要:

  • 删除我单击过的元素(-)
  • [单击(+)时在堆栈面板中添加另一个元素

有人可以帮助我提供代码,网站,教程吗?

谢谢。

这里是我在UserControl中创建的元素:

<CheckBox x:Name="cbx_configurationIsActive" Style="{DynamicResource CheckBoxStyle}" HorizontalAlignment="Center" VerticalAlignment="Center" Grid.Row="0"/>
<Button x:Name="btn_Edit" Style="{DynamicResource ButtonEditStyle}" Grid.Row="0" Grid.Column="1" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Button x:Name="btn_Delete" Style="{DynamicResource ButtonPurgeStyle}" Grid.Row="0" Grid.Column="2" VerticalAlignment="Center" HorizontalAlignment="Center"/>
<Label x:Name="Lbl_configName" Content="" Grid.Row="0" Grid.Column="3" Margin="10 0 0 0" HorizontalAlignment="Left" VerticalAlignment="Center"/>

这里是我要添加元素的窗口摘录:

<ListBox Name="stk_configurationList">
   <ItemsControl ItemsSource="{Binding ConfigurationsList}"/>
</ListBox>
c# wpf stackpanel
1个回答
0
投票

您使用的是ListBox错误。 ListBox源自ListBox。同样,在您的方案中,您绝对应该使用ItemsControl而不是ObservableCollection

从您发布的代码看来,您应该阅读一些基本知识(我没有检查链接内容的质量,但是我通常建议所有Microsoft来源:]]

Configuration.cs

Microsoft Docs: Data binding overview in WPF/Binding to collections/How to implement collections

ViewModel.cs

(有关The ListBox control的实现示例,请参见class Configuration { public string TextValue { get; set; } }
Microsoft Docs: Patterns - WPF Apps With The Model-View-ViewModel Design Pattern

MainWindow.xaml

RelayCommand
© www.soinside.com 2019 - 2024. All rights reserved.