Проблема с получением динамически созданных элементов пользовательского интерфейса в C # - PullRequest
0 голосов
/ 16 мая 2018

Я создаю некоторые элементы пользовательского интерфейса в цикле for и устанавливаю для их атрибутов Name значение name+i, где i - счетчик цикла. Позже, если я попытаюсь получить элемент по имени, который был создан в цикле for, элемент пользовательского интерфейса не будет найден. Что я делаю не так?
Изменить:
Хорошо, вот код:

WrapPanel panel = new WrapPanel();
panel= (WrapPanel)FindName("panel");
Image img;

for(int i=0;i<5;i++){
    img=new Image();
    img.Name="name"+i;
    img.Source = new BitmapImage(new Uri("someimg.png", UriKind.Relative));
    panel.Children.Add(img);
}

//where img could not be found. However, at this point, all the images are present in panel.Children
img= (Image)FindName("name1");

Редактировать 2:
Хорошо, я решил проблему, мне просто нужно было использовать метод RegisterName. Спасибо всем ...

1 Ответ

0 голосов
/ 17 мая 2018

Я выяснил, в чем проблема.Мне также пришлось использовать метод RegisterName после добавления ребенка к родителю.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...