Как населить combobox от набора данных Доступа / База данных

я врезался в кирпичную стену на том, что сделать рядом с, населяют combobox от набора данных в настоящее время, я имею. моя база данных - требование "PID2db.mdb", и стол называют "Клиентом"

        string strCon = Properties.Settings.Default.PID2dbConnectionString;
        OleDbConnection conn = new OleDbConnection(strCon);
        try {
            conn.Open();
            string strSql = "Select forename,surname from customer where [customerID] ='" + txtName.Text + "'";
             OleDbDataAdapter adapter = new OleDbDataAdapter(new OleDbCommand(strSql, conn));
            DataSet ds = new DataSet();
            adapter.Fill(ds);
            cboName.DataSource = ds.Tables[0];
            cboName.DisplayMember = "forename";
            cboName.ValueMember = "surname";
        }
        finally {
            conn.Close();
        }
    }

любая помощь ценится, спасибо

править: добавленные новые сегменты кода

0
nl ja de
Хорошо, Попытка с этим примером: stackoverflow.com/questions/2809845/… . Если у вас есть некоторая ошибка/проблема, пожалуйста, добавьте некоторый код для обзора;)
добавлено автор Mate, источник
Хорошо, дайте мне момент. I' ll пытаются добавить другой пример. Я don' t понимают где пункт... Ваше имя столбца - CustomerID? и вы пробуете поиск, используя последовательность?
добавлено автор Mate, источник
Хорошо, дайте мне момент. I' ll пытаются добавить другой пример. Я don' t понимают где пункт... Ваше имя столбца - CustomerID? и вы пробуете поиск, используя последовательность?
добавлено автор Mate, источник
Хорошо, Попытка с этим примером: stackoverflow.com/questions/2809845/… . Если у вас есть некоторая ошибка/проблема, пожалуйста, добавьте некоторый код для обзора;)
добавлено автор Mate, источник
я посмотрел на это ранее и меня просто, косяк получает мою голову вокруг этого, я очень плохо знаком с C#
добавлено автор Bunion, источник
о, дорогой я - идиот! комбинированное окно теперь заполняет спасибо за вашу помощь! я чувствую себя настолько глупым прямо сейчас: (
добавлено автор Bunion, источник
Я использую Windows Forms
добавлено автор Bunion, источник
Я использую Windows Forms
добавлено автор Bunion, источник
о, дорогой я - идиот! комбинированное окно теперь заполняет спасибо за вашу помощь! я чувствую себя настолько глупым прямо сейчас: (
добавлено автор Bunion, источник
как я иду о том, чтобы заставлять combobox показать и имя и фамилию?
добавлено автор Bunion, источник
как я иду о том, чтобы заставлять combobox показать и имя и фамилию?
добавлено автор Bunion, источник

3 ответы

У принятия вас есть Форма с:

  1. Combobox назвал cboName
  2. TextBox назвал txtName

Попробуйте это:

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();

            LoadCustomerOnCombo();
        }

        private void LoadCustomerOnCombo()
        {
            string strCon = Settings.Default.PID2dbConnectionString;

            try
            {
                using (OleDbConnection conn = new OleDbConnection(strCon))
                {
                    conn.Open();
                    string strSql = "SELECT forename &\" \" & surname AS FullName, surname FROM customer"; //WHERE [customerID] ='" + txtName.Text + "'";
                    OleDbDataAdapter adapter = new OleDbDataAdapter(new OleDbCommand(strSql, conn));
                    DataSet ds = new DataSet();
                    adapter.Fill(ds);
                    cboName.DataSource = ds.Tables[0];
                    cboName.DisplayMember = "FullName";
                    cboName.ValueMember = "surname";
                }     
            }
            catch (Exception ex)
            {
                txtName.Text = ex.Message;
                Console.WriteLine(ex.Message);
            }
        }
    }

Если работается поэтому, пожалуйста, скажите мне, как, где, уехал, прокомментировал в данный момент, еще есть какие-либо ошибки, вы будете видеть в textbox.

3
добавлено
Большой! I' m довольный вы помогли. Всегда пытайтесь добавить больше данных и некоторую часть кода, чтобы облегчить находить правильное решение: D
добавлено автор Mate, источник
@Bunion обновляется! проверьте изменения DisplayMember и strSql
добавлено автор Mate, источник
Спасибо! помогший меня много!
добавлено автор Bunion, источник
работает отлично! спасибо небольшая поправка tho, как я иду о создании обоих фамилия & имя, появляется в combobox?
добавлено автор Bunion, источник

Необходимо создать новый DataSet, заполнить его Данными и наконец установить ComboBox DataSource, DisplayMember и ValueMember свойства. Вот код:

using System.Data.OleDb;

            string strCon = Properties.Settings.Default.PID2dbConnectionString;
            OleDbConnection conn = new OleDbConnection(strCon);
            try {
                conn.Open();
                string strSql = "Select forename,surname from customer where customer id ='" + txtName.Text + "'";
                OleDbDataAdapter adapter = new OleDbDataAdapter(new OleDbCommand(strSql, conn);
                DataSet ds = new DataSet();
                adapter.Fill(ds);
                comboBox1.DataSource = ds.Tables[0];
                comboBox1.DisplayMember = "forename";
                comboBox1.ValueMember = "surname";
            }
            finally {
                conn.Close();
            }
1
добавлено
@platon извиняют меня, но каждый раз, когда кто-то предлагает код, которые связывают последовательности ввода данных пользователем, чтобы сформировать sql заявление, которому я не могу сопротивляться, и я должен написать что-то, чтобы сказать, что это не хорошая вещь. Никогда не делайте.
добавлено автор Steve, источник
если у вас действительно есть область, названная ' клиент id' тогда вам нужны квадратные скобки вокруг того имени [идентификатор клиента]
добавлено автор Steve, источник
Ваш ответ стоимостью в один upvote, но не говорящий, что конкатенация строк - очень плохая практика ценность один downvote.Draw.
добавлено автор Steve, источник
@Steve, it' s хорошо, и вы правы, я думаю, что вы были правы, я должен был изменить первоначальный код....
добавлено автор platon, источник
@Steve, I' ve просто скопировал избранную команду с вопроса. Я решил не изменить избранную команду
добавлено автор platon, источник
@Bunion, набор точка останова в adapter.fill методе и идут с отладчиком вперед. Как только DataSet переполнен, проверьте ds. Собственность [0].RowCount столов в Быстром окне Часов. Сколько отчетов находится в DataTable?
добавлено автор platon, источник
я получил сортированное спасибо за всю помощь! отметили ответ выше этого как правильный
добавлено автор Bunion, источник
добавленные квадратные скобки напрасно unfortuntally:/
добавлено автор Bunion, источник
его все еще урегулирование данные в combox и нет никаких сообщений об ошибках подъем
добавлено автор Bunion, источник

Необходимо создать новый DataSet, заполнить его Данными и наконец установить ComboBox DataSource, DisplayMember и ValueMember свойства. Вот код:

using System.Data.OleDb;

            string strCon = Properties.Settings.Default.PID2dbConnectionString;
            OleDbConnection conn = new OleDbConnection(strCon);
            try {
                conn.Open();
                string strSql = "Select forename,surname from customer where customer id ='" + txtName.Text + "'";
                OleDbDataAdapter adapter = new OleDbDataAdapter(new OleDbCommand(strSql, conn);
                DataSet ds = new DataSet();
                adapter.Fill(ds);
                comboBox1.DataSource = ds.Tables[0];
                comboBox1.DisplayMember = "forename";
                comboBox1.ValueMember = "surname";
            }
            finally {
                conn.Close();
            }
1
добавлено
@platon извиняют меня, но каждый раз, когда кто-то предлагает код, которые связывают последовательности ввода данных пользователем, чтобы сформировать sql заявление, которому я не могу сопротивляться, и я должен написать что-то, чтобы сказать, что это не хорошая вещь. Никогда не делайте.
добавлено автор Steve, источник
если у вас действительно есть область, названная ' клиент id' тогда вам нужны квадратные скобки вокруг того имени [идентификатор клиента]
добавлено автор Steve, источник
Ваш ответ стоимостью в один upvote, но не говорящий, что конкатенация строк - очень плохая практика ценность один downvote.Draw.
добавлено автор Steve, источник
@Steve, it' s хорошо, и вы правы, я думаю, что вы были правы, я должен был изменить первоначальный код....
добавлено автор platon, источник
@Steve, I' ve просто скопировал избранную команду с вопроса. Я решил не изменить избранную команду
добавлено автор platon, источник
@Bunion, набор точка останова в adapter.fill методе и идут с отладчиком вперед. Как только DataSet переполнен, проверьте ds. Собственность [0].RowCount столов в Быстром окне Часов. Сколько отчетов находится в DataTable?
добавлено автор platon, источник
я получил сортированное спасибо за всю помощь! отметили ответ выше этого как правильный
добавлено автор Bunion, источник
добавленные квадратные скобки напрасно unfortuntally:/
добавлено автор Bunion, источник
его все еще урегулирование данные в combox и нет никаких сообщений об ошибках подъем
добавлено автор Bunion, источник
Верстка сайтов HTML/CSS/JS/PHP
Верстка сайтов HTML/CSS/JS/PHP
3 439 участник(ов)

Правила группы: напишите !rules в чате. Группа Вк: vk.com/web_structure Freelancer: @web_fl Веб Дизайн: @dev_design Маркетолог: @topmarkening Автор: @M_Boroda

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

CSS — русскоговорящее сообщество
CSS — русскоговорящее сообщество
1 502 участник(ов)

Сообщество любителей CSS Возникли проблемы с CSS? – пиши сюда, обсудим и предложим самое лучшее решение Работа: @css_ru_jobs Правила: https://teletype.in/@css_ru/r1EWtQ2w7 Приходите в наши чаты @javascript_ru и @frontend_ru Флуд: @css_flood

Чат — Типичный Верстальщик
Чат — Типичный Верстальщик
1 080 участник(ов)

Основной канал: @tpverstak Обратная связь: @annblok Все ссылки на соц.сети проекта: http://taplink.cc/tpverstak ПРАВИЛА ЧАТА — https://teletype.in/@annblok/BygPgC3E7

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

Веб-Технологи: UI/UX, Вёрстка, Фронтенд
Веб-Технологи: UI/UX, Вёрстка, Фронтенд
167 участник(ов)

Всё про веб-дизайн и вёрстку. А также: HTML, CSS, флекс и бутстрапы, шаблонизаторы, препроцессоры, методологии, аглифаеры, улучшаторы и обфускаторы. Обсуждаем темы юзабилити, устраиваем А/В тесты лендингов, и проводим аудит.

DTP :: @DTPublish
DTP :: @DTPublish
147 участник(ов)

Обсуждаемые темы: полиграфия, препресс, верстка, дизайн, иллюстрации, скрипты, плагины. Канал - @DTPublishing

css_jobs
css_jobs
26 участник(ов)

Чат для вопросов по css и html: @css_ru Флуд: @css_flood Канал с вакансиями и резюме: @css_jobs_feed

css_флуд
css_флуд
10 участник(ов)