2012-08-30 106 views
2

我認爲下面的圖片足夠好地描述了這個問題。組合框內的項目出現在組合框外

http://www.webeasy.com.gr/problem.jpg

在我的Windows Phone 7應用程序(C#),我結合一些數據(StatusNameAsceding,StatusNameDesceding等)

組合框正如你可以看到下拉似乎完全是空白,它的項目出現除了所選的下拉菜單之外。 任何想法。

UPDATE ... 我使用

的組合框的代碼...(XAML頁面)在App.xaml.cs

public enum SortingColumns 
{ 
    StatusNameAscending = 0, 
    StatusNameDescending, 
    EXAMINOAscending, 
    EXAMINODescending, 
} 
public SortingColumns SortingColumn { get; set; } 

在後面

<ComboBox SelectionChanged="OnSortingColumnChanged" 
x:Name="SortingColumn" Margin="2,0,0,0" Foreground="Black" 
VerticalContentAlignment="Center" Padding="0"> 

代碼(page.xaml.cs)

this.DataContext = CreateSampleData(); 

App.Current.SortingColumn = App.SortingColumns.StatusNameAscending; 
SortingColumn.Items.Add(App.SortingColumns.StatusNameAscending.ToString()); 
SortingColumn.Items.Add(App.SortingColumns.StatusNameDescending.ToString()); 
SortingColumn.Items.Add(App.SortingColumns.EXAMINOAscending.ToString()); 
SortingColumn.Items.Add(App.SortingColumns.EXAMINODescending.ToString()); 
SortingColumn.SelectedIndex = (int)App.Current.SortingColumn; 

和...

private void OnSortingColumnChanged(object sender, SelectionChangedEventArgs e) 
{ 
    App.Current.SortingColumn = (App.SortingColumns)SortingColumn.SelectedIndex; 

    // Rebind 
    // The List control binds the data again when a different datacontext is set. 
    var datacontext = DataContext; 
    DataContext = null; 
    DataContext = datacontext; 
} 

UPDATE2 ... 當我在空白列表的選擇發生變化點擊排序應用 我覺得不對勁發生在組合框模板,但我不不知道什麼! 任何想法? 在此先感謝!

+0

謝謝史蒂夫!你很親切! – Gino

+0

你可以發佈一些代碼,以便我們可以瞭解發生了什麼? –

+0

請看看我更新的問題!謝謝! – Gino

回答

0

最後我用listpicker來代替ComboBox

<toolkit:ListPicker SelectionChanged="OnSortingColumnChanged" x:Name="SortingColumn" Margin="2,0,0,0" Foreground="Black" Width="300" Height="180" FontSize="18"></toolkit:ListPicker> 

的一些細節......

,首先必須安裝Windows Phone的Silverlight的工具。你可以在這裏下載:http://silverlight.codeplex.com/releases/view/71550

然後我們去AnyPage.xaml並建立了一個樣本用戶界面,但在那之後,我們聲明如下所示:

xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit" 

代碼的其餘部分保持不變。欲瞭解更多關於listpicker的信息,請看看here