Я думаю, что у меня был бы производный класс (WPF) UserControl
, который может принимать настраиваемую отформатированную строку (или xml), которая содержит текст и заполнители для отображения:
myUserControl.DisplayContent="Rome was built in #numberofdays# day(s). The first mayor of Rome was #mayorofrome#."
UserControl анализирует эту строку и создает пользовательский интерфейс, состоящий из TextBlocks (статический текст) и TextBoxes (элементы управления вводом).
Кроме того, UserControl имеет свойство типа Dictionary<string,string>
, которое содержит строки, введенные пользователем (вводимые с помощью строки-заполнителя):
Console.WriteLine(myUserControl.Result["numberofdays"]);
Console.WriteLine(myUserControl.Result["mayorofrome"]);
Этот словарь будет заполнен UserControl, когда пользователь вводит тексты.