2016-08-03 5 views
-1

コンボボックスのアイテムが表示されません。ビジュアルスタジオ2015でうまくいきます。しかし、私はこれをVisual Studio 2013で試してみると、何も表示していません。私はComboBox_Loaded関数でデバッグポイントを設定し、それから、私は最後の3行がコンパイラによってスキップされていることを確認しました。私はVisual Studio 2013のためにそれをどのように解決できますか。事前に感謝します。ComboBoxアイテムがWPFに読み込まれません

<Window x:Class="GraphicalUserInterface.ShowDataByObjectsWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    Title="ShowDataByObjectsWindow" Height="300" Width="300"> 
<Grid Background="#FFE5E5E5"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*"/> 
     <RowDefinition Height="Auto"/> 
    </Grid.RowDefinitions> 
    <StackPanel Grid.Row="0" Margin="10"> 
     <TextBlock FontWeight="Bold" Text="Object Options"/> 
     <ComboBox x:Name="dbObjects" Loaded="ComboBox_Loaded" SelectionChanged="ComboBox_SelectionChanged"/> 
    </StackPanel> 
</Grid> 

public partial class ShowDataByObjectsWindow : Window 
{ 
    public List<string> dataTableName = new List<string>(); 
    public static string comboItem; 

    public ShowDataByObjectsWindow() 
    { 
     InitializeComponent();   
    } 

    private void ComboBox_Loaded(object sender, RoutedEventArgs e) 
    { 
     dataTableName.Add("adasd"); 
     dataTableName.Add("adaasdsd"); 


     var comboBox = sender as ComboBox; 
     comboBox.ItemsSource = dataTableName; 
     comboBox.SelectedIndex = 0; 
    } 

    private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e) 
    { 
     var comboBox = sender as ComboBox; 

     string value = comboBox.SelectedItem as string; 
     this.Title = "Selected: " + value; 
    } 
} 
+0

"最後の3行はコンパイラによってスキップされていることがわかりました。":プロジェクトを再構築して強制的に再構築してください。 WPFアプリケーションのより古いバージョンを実行しているようです。 –

+0

私はきれいにして再構築しました。それはまだ同じです。更新なし – Aarav

答えて

1

この

public ObservableCollection<String> Items { get; set; } 

//public 
public MainWindow() 
{ 
    InitializeComponent(); 

    Items = new ObservableCollection<string>(); 
    Items.Add("test"); 

    DataContext = this; 
} 

を試してみて、それが作品だビュー

<Window x:Class="WpfApplication1.MainWindow" 
     xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
     xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
     Title="MainWindow" Height="350" Width="525"> 
    <Grid> 
     <ComboBox HorizontalAlignment="Left" ItemsSource="{Binding Path=Items}" Margin="155,56,0,0" VerticalAlignment="Top" Width="120"/> 

    </Grid> 
</Window> 

を変更!

+0

あなたの例がうまくいきます。しかし、アイテムにデータベーステーブル名を追加しようとすると、「System.Data.Entity.dllに「System.ArgumentException」という型の例外が発生しました」という例外があります。 追加情報:指定したストアプロバイダは使用できません設定で見つかったか無効です。 " コードサンプルは、 'var eData = new DBEntities(); Items = new ObservableCollection (); Items.Add( "test"); Items.Add( "adasd"); Items.Add( "adaasdsd"); Items.Add(Convert.ToString(eData.Table1)); ' – Aarav

関連する問題