以编程方式提供元素名称

时间:2012-05-09 12:45:45

标签: c# windows-phone-7

我正在尝试为每个元素添加一个从循环中获取的唯一名称。我怎么能完成它?第2行是错误。

foreach (var station in stations) {
 TextBlock station.name = new TextBlock(); // error !!!                        
}

3 个答案:

答案 0 :(得分:3)

试试这个......

TextBlock station = new TextBlock() { Name="Something" };

答案 1 :(得分:1)

也许我误解了你想要做什么......你是否试图为一个集合的每个成员创建控件?如果这就是您正在做的事情,请尝试查看ListBox或更通用的ItemsPresenter控件,以及该元素的ItemTemplate属性。

例如,将ListBox添加到XAML,并将工作站分配为ItemsSource,然后添加DataTemplate来表示项目。

<ListBox ItemsSource="{Binding stations}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding name}"/>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>

答案 2 :(得分:0)

您尝试在textblock实例站的name属性上创建新的textblock实例。

这绝对不会起作用。

尝试:

TextBlock station = new TextBlock(); station.name = "Whatever name you want";