0

でスタイリングしListPickerていDataTemplateます。Binding Property私が読んだすべての例は、ListItemsがバインドされた複雑なオブジェクトであると想定しているため、通常の構文を使用してオブジェクトのプロパティを参照できます。例えば

this.myListPicker.Items.Add(new Profile() { Name = "Joe", 
    Occupation="Button pusher" });

XAMLでは、

<DataTemplate>
    <StackPanel>
        <TextBox Text="{Binding Name}" />
        <TextBox Text="{Binding Occupation}" />
    </StackPanel>
</DataTemplate>

ただし、私のListPickersはsimpleにバインドされておりListstrings実際に文字列を参照するプロパティが文字列にないようです。

テンプレート内のDataTemplateegに割り当てることができるように、内部の文字列へのハンドルを取得するにはどうすればよいですか?TextBox

4

1 に答える 1

1

表示するサンプルコードでは、実際には「複雑な」オブジェクト、プロファイルがあり、指定したバインディングが機能するはずです。

アイテムとして文字列だけがある場合、ItemTemplateのバインディングは次のようになります。

<TextBox Text="{Binding }" />

関連する詳細は、すべてのItemsControls(およびListPickerが1つであるように見える)が各アイテムのビューのDataContextをアイテムに設定することです。上記のバインディング構文は、「ソース自体にバインドする」ことを意味し、特に指定されていない限り(SourceやRelativeSourceなど)、バインディングのソースはDataContextです。

MSDNの詳細については、こちらをご覧ください。

于 2013-02-27T21:44:46.523 に答える