2013-03-15 31 views
0

我正在爲使用silverlight的窗口手機創建程序。使用C#代碼聲明組合框對象時的問題

我有一個小問題,它是關於建立一個組合框。

我可以使用XAML創建它,但我在的情況下,我應該用C#代碼申報。

的問題是創建組合框的一個新的實例和添加的項目之後,組合框不會出現!

代碼:

 TextBlock tb = new TextBlock(); 
     tb.Text = "Select your arrival status"; 

     tb.Margin = new Thickness(5.0); 
     tb.FontSize = 20; 
     tb.Foreground = new SolidColorBrush(Colors.White); 

     ComboBox cb = new ComboBox(); 
     ObservableCollection<string> testList = new ObservableCollection<string>(); 
     testList.Add("Hi"); 
     testList.Add("Hi1"); 
     testList.Add("Hi2"); 
     cb.DataContext = testList; 
     cb.Height = 50; 
     cb.Width = 200; 
     cb.Foreground = new SolidColorBrush(Colors.White); 

     panel.Children.Add(tb); 
     panel.Children.Add(cb); 

正如你可以從代碼中看到,我宣佈一個TextBlock和一個組合框對象。 TextBox對象出現,而Combobox不出現。

任何幫助將不勝感激。

+0

面板是什麼樣的元素?面板是一個抽象類,所以你的面板是一個Canvas,Grid,StackPanel?當他們加入孩子時,他們的行爲都不一樣。 – 2013-03-15 12:53:07

+0

這是一個StackPanel – user2073081 2013-03-15 12:54:00

+0

你給ComboBox命名了嗎?不確定它會做什麼,但值得一試。 – 2013-03-15 13:04:16

回答

0

你需要指定它的位置。您的組合框很可能在您的文本框下。或者使用設計器和xaml創建它們中的兩個,或者確保將x,y座標分配給它們。使用Margin屬性以及Horizo​​ntalAlignment和VerticalAlignment。

+0

我不認爲這是問題。我完全刪除了文本塊,但組合框仍未出現。 – user2073081 2013-03-15 12:50:57

+0

@ user2073081你試圖在飛行中展現這一點而不是在設計器中構建xaml的任何原因? – 2013-03-15 12:58:02

+0

我想在PopUp實例中添加ComboBox和其他UI元素。 – user2073081 2013-03-15 12:59:25