我的目標是在ListBox中顯示Datatemplate和兩個TextBlocks:用戶消息文本和用戶名。Windows phone綁定來自兩個獨立類的數據
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding MessageText}"/>
<TextBlock Text="{Binding UserName}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
我已經產生,並從JSON響應解析到列表中兩個獨立的類:
Message
{
int MessageID;
string MessageText;
int UserID;
}
User
{
int UserID;
string UserName;
}
List<Message> Messages;
List<User> Users;
我怎麼可能在XAML UserName
結合來自User
類從Message
類旁邊的用戶信息?這兩個類都有UserId
,這是相同的。
當然,簡單的方法去Message
類將創造更多的財產UserName
,然後通過從用戶類UserName
財產爲Message
然後將它綁定,但似乎重複的任務和壞的做法。
想到的一個解決方案是使用某種類型的值轉換器,然後傳遞額外的參數,如UserId
和用戶列表,但這似乎有點hackish ..所以我想知道是否有某種linq,sql樣式實現以獲得我想要的結果?
感謝,它適用於我現在:)與linq我可以從Json.net JObject查詢並直接傳遞屬性到Message類。 – janiss