Вставьте XAML внутрь Frame программно - PullRequest
1 голос
/ 02 июля 2019

Итак, я хочу вставить код XAML в XAML Frame, используя C #, но я не уверен, как это сделать? Я приведу пример того, чего я пытаюсь достичь.

Образец XAML:

 <Frame x:Name="INPUT"/>

C # Образец:

 var lines = File.ReadLines("example.txt");
 foreach(var line in lines)
 {
     string content = line
     INPUT.Content = //XAML TEMPLATE
 }

Поэтому для каждой строки я хочу вставить шаблон, содержащий уникальные значения, основанные на используемой строке, поэтому, если строки равны 3, вставьте 3 шаблона XAML в Frame.

Базовый пример шаблона:

<Label Content=content />

Ожидаемый результат будет тогда, что Frame имеет 3 из

<Label Content=content />

В основном получается 3 метки, содержащие строку из текущей строки.

1 Ответ

0 голосов
/ 02 июля 2019

Используйте ItemsControl с соответствующим ItemTemplate, который содержит метку или, что лучше, TextBlock:

<ItemsControl x:Name="itemsControl">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding}"/>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

Назначьте IEnumerable его свойству ItemsSource:

itemsControl.ItemsSource = File.ReadLines("example.txt");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...