このページは役に立ちましたか。
このページのコンテンツについての ご意見をお待ちしております
その他にご意見はありますか。
残り 1500 文字
MSDN ライブラリ
情報
要求されたトピックは次のとおりです。しかし、このトピックはこのライブラリには含まれていません。

ItemsControl.ItemTemplate プロパティ

2013/12/12

各項目を表示するために使用する DataTemplate を取得または設定します。

Namespace:  System.Windows.Controls
アセンブリ:  System.Windows (System.Windows.dll 内)
XAML の XMLNS: xmlns にマップされていません。

public DataTemplate ItemTemplate { get; set; }
<itemsControl>
  <itemsControl.ItemTemplate>
    singleDataTemplate
  </itemsControl.ItemTemplate>
</itemsControl>
<itemsControl ItemTemplate="resourceReferenceToDataTemplate"/>

XAML 値

singleDataTemplate

単一の DataTemplate オブジェクト要素。通常、その DataTemplate はデータ表現の外観を定義する複数の子要素を持ちます。

resourceReferenceToDataTemplate

リソース コレクションからの既存の DataTemplate へのリソース参照。リソース参照では、目的の DataTemplate をキーで指定する必要があります。

プロパティ値

型: System.Windows.DataTemplate
データ オブジェクトの表示を指定するテンプレート。既定値は null です。

依存関係プロパティの識別子フィールド:  ItemTemplateProperty

データの視覚表現を指定するには、ItemTemplate プロパティを使用します。ItemTemplate は、ItemsSource をデータにバインドするときに特に有効です。データ オブジェクトの外観を定義するには、DataTemplate を使用します。DataTemplate の内容が、データ オブジェクトのビジュアル構造になります。ItemTemplate を設定しなかった場合、ItemsControl には、コレクション内のオブジェクトの文字列表現が表示されます。

次の例では、DataTemplate を使用して、ItemsControl を継承する ListBox の項目を表示します。この例では、ListBox は、Customer オブジェクトのコレクションにバインドされています。DataTemplate には、FirstNameLastNameAddress の各プロパティにバインドされる TextBlock コントロールが含まれています。データ バインディングの詳細については、「Windows Phone のデータ バインディング」を参照してください。


<Grid>
    <Grid.Resources>
        <src:Customers x:Key="customers"/>
    </Grid.Resources>

    <ListBox ItemsSource="{StaticResource customers}" Margin="0,5,0,10">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal" >
                    <TextBlock Padding="3,0,3,0"
          Text="{Binding FirstName}" FontSize="{StaticResource PhoneFontSizeSmall}"/>
                    <TextBlock Text="{Binding LastName}" FontSize="{StaticResource PhoneFontSizeSmall}"/>
                    <TextBlock Text=", " FontSize="{StaticResource PhoneFontSizeSmall}"/>
                    <TextBlock Text="{Binding Address}" FontSize="{StaticResource PhoneFontSizeSmall}"/>
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
</Grid>


Customer クラスと ListBox がバインドされるコレクションを次の例に示します。


public class Customer
{
    public String FirstName { get; set; }
    public String LastName { get; set; }
    public String Address { get; set; }

    public Customer(String firstName, String lastName, String address)
    {
        this.FirstName = firstName;
        this.LastName = lastName;
        this.Address = address;
    }

}

public class Customers : ObservableCollection<Customer>
{
    public Customers()
    {
        Add(new Customer("Michael", "Anderberg",
                "12 North Third Street, Apartment 45"));
        Add(new Customer("Chris", "Ashton",
                "34 West Fifth Street, Apartment 67"));
        Add(new Customer("Cassie", "Hicks",
                "56 East Seventh Street, Apartment 89"));
        Add(new Customer("Guido", "Pica",
                "78 South Ninth Street, Apartment 10"));
    }

}


Windows Phone OS

サポート: 8.0, 7.1, 7.0

表示:
© 2015 Microsoft