0

各要素に、ループから取得した一意の名前を追加しようとしています。どうすればそれを達成できますか?2行目はエラーの場所です。

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

3 に答える 3

3

代わりにこれを試してください...

TextBlock station = new TextBlock() { Name="Something" };
于 2012-05-09T12:47:53.460 に答える
1

たぶん私はあなたが何をしたいのか誤解しています...あなたはコレクションの各メンバーのコントロールを作成しようとしていますか?それがあなたがしていることであるなら、ListBox、またはより一般的なItemsPresenterコントロールとその要素のItemTemplateプロパティを見てみてください。

たとえば、リストボックスをXAMLに追加し、ステーションをItemsSourceとして割り当ててから、アイテムを表すDataTemplateを追加します。

<ListBox ItemsSource="{Binding stations}">
    <ListBox.ItemTemplate>
        <DataTemplate>
            <TextBlock Text="{Binding name}"/>
        </DataTemplate>
    </ListBox.ItemTemplate>
</ListBox>
于 2012-05-09T13:01:34.430 に答える
0

textblockインスタンスステーションのnameプロパティでtextblockの新しいインスタンスを作成しようとしています。

それは間違いなく機能しません。

試す:

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

于 2012-05-09T13:48:33.257 に答える