我目前正試圖將兩個集合合併爲一個用於綁定到組合框。我第一次開始在一個類中建立兩個靜態集合:如何在Silverlight中將兩個可觀察的集合合併到集合中
public partial class MainPage : UserControl
{
//create static observable collection
private ObservableCollection<string> items;
public ObservableCollection<string> Items
{
get
{
return this.items;
}
set
{
if (this.items != value)
{
this.items = value;
}
}
}
protected ObservableCollection<string> StaticItems
{
get
{
return new ObservableCollection<string>() { "Select User", "Select All" };
}
}
//create dynamic observable collection
public MainPage()
{
InitializeComponent();
this.items = this.StaticItems;
this.comboBox1.ItemsSource = this.Items;
}
private void UserControl_Loaded(object sender, RoutedEventArgs e)
{
foreach (var item in GetDynamicItems())
{
this.Items.Add(item);
}
}
private List<string> GetDynamicItems()
{
return new List<string>() { "User1", "User2", "User3" };
}
上面的工作是按照需要的。 我想現在要做的就是initate查詢到的服務,並有追加到集合,而不是用戶1,用戶2該服務的結果,用戶3
我創建一個查詢,以服務爲:
private void FillOfficerList()
{
QueryClient qc = new QueryClient("BasicHttpBinding_IQuery");
qc.GetOfficerNamesCompleted += new EventHandler<GetOfficerNamesCompletedEventArgs>(qc_GetOfficerNamesCompleted);
qc.GetOfficerNamesAsync();
}
public void qc_GetOfficerNamesCompleted(object sender, GetOfficerNamesCompletedEventArgs e)
{
// Now how do I add e.Results to above collection?
}
查詢的工作原理我只是堅持如何將結果(e.Results)綁定/連接到Items集合。任何指針或提示將不勝感激。
注意:這是用於silverlight的,所以使用複合集合方法似乎不是一個選項,因爲該類不受支持。
在此先感謝
如果它幫助你解決問題,請將其標記爲答案。 – 2010-08-16 18:40:57