将列表<canvas>渲染为列表项(或itemscontrol)</canvas>

时间:2009-11-08 17:52:11

标签: silverlight canvas binding

我有效地获得了一个List或一个List,XAML代表了canvas元素......作为一些我无法控制的东西的返回。

我通过stackpanel.children.add等进行了适度的成功渲染,但是想要在虚拟化面板或列表中开始使用画布列表。

我在<ItemsControl>上设置了itemssource和datacontext,并将<DataTemplate>设置为

<DataTemplate>
   <ContentControl content="{Binding Path=CanvasBody}"/> 
</DataTemplate>

这有效地将整个银光体变成白色/空白。我真的不在乎我最终如何获得所需的结果,这是一个渲染画布的列表...最好是为速度虚拟化。

它是一个迟钝的问题,就像Silverlight应用程序的构建方式而言并不理想,我知道......

我真的很感激任何指针。谢谢!

1 个答案:

答案 0 :(得分:0)

通常,要显示将items控件itemssource属性绑定到列表的元素列表,然后为其设置datatemplate,以显示列表项类型的所需属性。您不需要设置内容控件。除此之外,我无法确切地看到你究竟在问什么。

<DataTemplate>
    <Grid>
        <TextBlock Text="{Binding ExampleProperty1}"/>
    </Grid>
</DataTemplate>

代码隐藏文件:

public class ExampleClass
{
    public String ExampleProperty1
    {
        get
        {
            return "TEST";
        }
    }
}

public List<ExampleClass> List {get;} // note that this must be a public PROPERTY,    
                                      // not a field!