2017-02-18 5 views
0

Я новичок в C# и Linq и хочу заполнить ComboBox Linq из MS Access. Но если я отлаживаю код, ComboBox пуст.Fill ComboBox с Linq с MS Access

Я прочитал несколько старых сообщений, но они не помогли. Где провал?

private void Form1_Load(object sender, EventArgs e) 
{ 
    try 
    { 
     connection.Open(); 
     label1.Text = "OK"; 

     PoolDataSet pool = new PoolDataSet(); 

     comboBoxPool.DisplayMember = "Pool-Name"; 
     comboBoxPool.ValueMember = "ID"; 

     comboBoxPool.DataSource = (from x in pool.Pools 
             select x._Pool_Name).ToList(); 

     connection.Close(); 
    } 
    catch (Exception ex) 
    { 
     MessageBox.Show("Error" + ex); 
    } 
} 
+0

Переместить 'comboBoxPool.DisplayMember = "Pool-Name"; comboBoxPool.ValueMember = "ID"; 'в нижней части этой строки:' comboBoxPool.DataSource'. –

+0

Затем я получаю исключение из «Не могу привязываться к новому элементу отображения» ... – prografix

+0

Вы вырезали и вставляли эти две строки или просто копировали их? –

ответ

0

Спасибо, что заполнили мой пул-объект, была проблема. Я получил его с добавлением .Нанести():

connection.Open(); 
 
connectionLabel.Text = "Connection successful!"; 
 

 
PoolsDataSet pool = new PoolsDataSet(); 
 
(new PoolsDataSetTableAdapters.PoolsTableAdapter()).Fill(pool.Pools); 
 
comboBoxPool.DataSource = (from x in pool.Pools 
 
          select x.ID).ToList(); 
 

 
comboBoxPool.DisplayMember = "ID"; 
 

 
connection.Close();

Это работает;)

Смежные вопросы