UIElement
Silverlightのアイテムとして派生したものがある場合、オブジェクトはそのままレンダリングされ、および/またはListBox
の設定に注意を払っていないことに気付きました。DisplayMemberPath
ListBox.ItemTemplate
たとえば、次のようなXAMLがある場合:
<ListBox Width="200" Height="300" DisplayMemberPath="Tag">
<TextBlock Tag="tag1">text1</TextBlock>
<TextBlock Tag="tag2">text2</TextBlock>
<TextBlock Tag="tag3">text3</TextBlock>
</ListBox>
Siverlightでは、これにより次のListBox
ようなアイテムが生成されます。
text1
text2
text3
ただし、WPFでは(これは正しい動作だと思います)、期待どおりにタグが一覧表示されます。
tag1
tag2
tag3
UIElementから継承されていないオブジェクトを使用すると、すべてが期待どおりに機能します。
<ListBox Width="200" Height="300" DisplayMemberPath="[0]">
<sys:String>abcde</sys:String>
<sys:String>fgh</sys:String>
</ListBox>
生産:
a
f
他のオブジェクトと同じようにSilverlightのようにUIElement
sを使用する方法はありますか?ItemsSource
それとも私は何かが足りないのですか?