Добрый вечер.
Каким образом можно динамически добавлять в UcerCntrol элементы управления (TextBox'ы)? К примеру есть два объекта Line Circle
public class Line:IObjects
{
private string _nameObject;
public Point StartPoint(){get;set;}
public Point EndPoint(){get;set;}
public string NameObject{{return "Line";}{_nameObject = value;}}
}
public class Circle:IObjects
{
private string _nameObject;
public Point CenterPoint(){get;set;}
public string NameObject{{return "Line";}{_nameObject = value;}}
}
interface IObject
{
string NameObject{get;set;}
}
Когда я получаю объекты интерфейса во View, необходимо отобразить параметры координат, т.к. в Line используется два параметра, а в Circle один то определяем сколько TextBox'ов необходимо отобразить для изменения параметров каждого объекта. Создать предварительно TextBox'ы в UC не логично, потому что при необходимости мы должны уметь создавать необходимое количество элементов в зависимости от редактируемого объекта.

ViewModelпередаем данные воView, но их необходимо правильно отразить, то есть есть несколько вариантов (приходят координаты, к примеру координаты линии (координаты начала и окончания линии) и круга (координаты центра)) но не красиво делать дваTextBoxдля круга, вариант изменять видимость то же не подходит не продуктивно вдруг надо будет добавить многогранник n-граний. – KJfe Nov 29 '17 at 16:21TextBox'aв WPF не в ручную прописывая в XAML и делая привязку (Binding) а динамически от определенных критерев. – KJfe Nov 29 '17 at 20:09TextBox– KJfe Nov 29 '17 at 20:10ObservableCollection,INotifyPropertyChanged,ItemsControlcItemsControl.ItemTemplate. Первой пары ссылок в гугле хватит. По сути: 1) связать оба ваших класса в новом классе LineAndCircle. 2) СоздатьObservableCollection<LineAndCircle>. 3) В интерфейсе создатьItemControlс нужным вамItemTemplate. 4) ПривязатьItemSourceвашегоItemControlкObservableCollection<LineAndCircle>– Иван Nov 29 '17 at 20:21