Как редактировать/изменять дочерние элементы, которые уже были добавлены?Изменение уже добавленных дочерних элементов
У меня есть grid
с добавленным дочерним элементом border
, который настроен на определенный цвет. Как изменить существующий цвет border
без добавления нового дочернего элемента?
Поскольку мне нужно, чтобы эти элементы были созданы динамически, для этого я использовал вместо xaml код.
Я определяю свою сетку и добавить рамку к нему следующим образом:
Dim NewNodeGrid As New Grid
Dim Bcgkgr As New SolidColorBrush
Dim MyBorder As New Border
Bcgkgr.Color = Color.FromArgb(255, 85, 57, 33)
MyBorder.BorderBrush = Brushes.Black
MyBorder.BorderThickness = New Thickness(5, 5, 5, 5)
MyBorder.Background = Bcgkgr
MyBorder.CornerRadius = New CornerRadius(15)
MyBorder.Name = "Border"
NewNodeGrid.Children.Add(MyBorder)
Так после того, как это сделано, можно открыть дочерний элемент MyBorder
и изменить его свойства, как BorderBrush
?
Я пробовал что-то вроде: NewNodeGrid.Children.Item(0).BorderBrush = Brushes.Blue
, но это не работает.
Edit:
Код выше будет запускать несколько раз, создавая тем самым несколько экземпляров NewNodegrid
. Мне нужно изменить границу любого отдельного/множественного экземпляра, но не сразу.
Edit2:
пример, чтобы проиллюстрировать то, что я пытаюсь достичь:
Я хочу создать несколько объектов (новые экземпляры определенного объекта) во время выполнения. И после этого я хочу изменить какое-либо свойство любого из этих объектов.
Это будет выглядеть следующим образом:
Используя код выше (подобный вариант), я создаю два объекта с границами. После этого я хочу изменить цвет рамки одного объекта, когда я нажимаю на указанный объект.
вы пытались установить MyBorder.BorderBrush из кода? – stsur
Да, это работает для одного элемента, но мне нужно иметь возможность устанавливать разные кисти для нескольких/разных экземпляров «NewNodeGrid». –
. Вы можете просто нарисовать дочерние элементы для ввода границы (при условии, что они фактически являются границами). Если вам нужно установить BorderBrush из нескольких границ в один цвет, может быть проще назначить одну SolidColorBrush для всех границ, а затем просто изменить свойство Color этого SolidColorBrush. – Clemens