2011-09-07 52 views
1

我想動態創建綁定,並將此綁定設置爲即時創建的字符串對象,並將其綁定到組合框的displaymemberpath屬性。動態創建綁定並將其設置爲創建的字符串對象silverlight

我該如何去做這件事?

這是我的代碼到目前爲止,但似乎沒有工作。將來會怎樣設置的結合路徑屬性(即原因,我做這種方式是因爲我有正在使用這個方法一個組合框號):

private void ComboValue_DropDownClosed(object sender, EventArgs e) 
    { 
     ComboBox combo = (ComboBox)sender; 
     int selectedItemCount = 0; 
     foreach (MyItem item in combo.Items) 
     { 
      if (item.IsSelected == true) 
       selectedItemCount = selectedItemCount + 1; 
     } 
     string SelectedComboCount = selectedItemCount.ToString(); 
     Binding b = new Binding(); 
     b.Source = SelectedComboCount ; 
     combo.SetBinding(ComboBox.DisplayMemberPathProperty, b); 
    } 
+1

+1因爲我討厭看到新手被低估而沒有機會。通常情況下,即使那些英語水平很差的人(由於英語不是他們的母語)寫出的問題也是可以理解的。不過,我發現這個問題的文字非常困難。你能否考慮包括一些完整的中止將大的單句分成更小的句子。 – AnthonyWJones

+0

@AnthonyWJones:已盡我所能清理它...窮人新手:) –

回答

0

您正在尋找在Text屬性,你可以做在XAML綁定:

<ComboBox Name="cb"> 
     ItemsSource="{StaticResource myCities}" 
     Text="{Binding ElementName=cb, Path=Items.Count}"> 
</ComboBox> 

編輯: 既然你是動態創建的連擊,這裏是如何做到的結合:

Binding binding = new Binding(); 
binding.Source = combo; 
binding.Path = new PropertyPath("Items.Count"); 
combo.SetBinding(ComboBox.TextProperty, binding); 

編輯2: 我的不好,這是爲WPF。 Text屬性在Silverlight中不可用。

+0

嗨我不能做xaml上的綁定動態組合,用戶點擊並創建多個選擇組合框,這一切都動態地完成關於後面的代碼。 – Mike

+0

好的,我添加了一個示例來展示如何動態創建綁定。希望能幫助到你! – alf

+0

嗨阿方索感謝您的答覆,當您設置它的屬性路徑,即時猜測項目是類名?你能描述一下你給出的路徑嗎,也沒有silverlight中的comboBox.TextProperty – Mike