Как вопрос, заданный выше, я создал ComboBox
динамически из кода позади.
Код, указанный ниже (этот код находится внутри BtnAddComboBox_Click
)
Grid grid = new Grid();
comboBox = new ComboBox();
comboBox.ItemsSource = salesman2;
comboBox.Name = "cbSalesman";
Button button = new Button();
button.Width = 50;
button.Name = "btnDelete";
button.Height = 30;
button.Background = Brushes.Transparent;
button.BorderBrush = Brushes.Transparent;
button.Click += new RoutedEventHandler(btnDeleteCB_Click);
grid.Children.Add(comboBox);
grid.Children.Add(button);
stackPanel.Children.Add(grid);
И у меня есть Button
имя AddComboBox
в моем XAML (синяя кнопка). когда пользователь нажимает на кнопку. Новый ComboBox будет добавлен вместе с DELETE BUTTON
с именем btnDelete
рядом с ним. так что это означает, что каждый comboBox будет иметь свою собственную кнопку удаления. он не имеет максимального числа ComboBox
, поэтому он будет добавлять новый ComboBox всякий раз, когда пользователь нажимает кнопку.
Проблема в том, когда я нажимаю btnDelete
. Он удалит все добавленные поля со списком (так как я думаю, что у него одно и то же имя)
Это мой метод удаления:
private void btnDeleteCB_Click(object sender, RoutedEventArgs e)
{
StackPanel stackPanel = FindChildControl<StackPanel>(this,"spSalesmanCombobox") as StackPanel;
stackPanel.Children.Remove(comboBox);
}
Когда я нажимаю btnDelete
, то только ComboBox
рядом с ним будет удалено. Как я могу это сделать ? Возможно ли это сделать?
Я хочу удалить сам ComboBox
. не выбранный элемент / элементы внутри него.