以编程方式在框架内插入XAML

时间:2019-07-01 22:06:57

标签: c# wpf xaml

因此,我希望使用C#将XAML代码插入XAML Frame中,但是我不确定该怎么做?我将提供一个示例,说明我要实现的目标。

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 :(得分:0)

使用带有适当ItemTemplate的ItemsControl,该{包含标签,最好是TextBlock:

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

将IEnumerable分配给其ItemsSource属性:

itemsControl.ItemsSource = File.ReadLines("example.txt");