如何在Windows Phone 7中以编程方式创建ListBox.Itemtemplate,datatemplate

Ash*_*Ash 6 c# listbox visual-studio-2010 windows-phone-7

我发现列表框的.xaml文件中有一些项目模板,数据模板和绑定.有没有办法在代码后面创建它?

有没有办法以编程方式创建数据模板?

这是XAML代码,但是我需要在代码中使用c#而不是XAML,因为我正在创建动态列表框,添加itemtemplatem,datatemplate

<ListBox Height="520" HorizontalAlignment="Left" Margin="0,6,0,0" Name="lstimge" VerticalAlignment="Top" Width="450" >
                <ListBox.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal">
                            <Image  Source="{Binding Image}" Width="150" Stretch="Uniform" HorizontalAlignment="Center" />
                            <TextBlock Text="{Binding FileName}" TextWrapping="Wrap" />
                        </StackPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
Run Code Online (Sandbox Code Playgroud)

请给出解决方案

谢谢,阿肖克

Dam*_*ian 5

您无法从代码构建模板 - 这只能通过XAML完成.

如果您在代码中动态生成模板XAML,则可以按照此处所述加载它.

我怀疑如果沿着这条路走下去,你会发现自己会打开一大堆蠕虫.作为替代方案,你可以预先定义一组模板,并动态地选择正确的一个在运行时,如所描述这里


Den*_*sky 5

您可以使用XamlReader.Load在代码隐藏中动态加载XAML并将其转换为DataTemplate,稍后将其分配给ItemTemplate.是一个例子.