содержимое в выпадающем списке не отображает данные из базы данных, но system.data.datarowview - PullRequest
1 голос
/ 07 апреля 2019

Я пытаюсь получить данные из моей базы данных, чтобы они отображались в моем комбинированном ящике, но вместо этого написано system.data.datarowview, может кто-нибудь, пожалуйста, протяните мне руку помощи.

public DataView GetAllCountries()
        {
            connection.Open();
            MySqlCommand command = connection.CreateCommand();
            command.CommandText = "select partij from partijen";
            MySqlDataReader reader = command.ExecuteReader();
            DataTable dtData = new DataTable();
            dtData.Load(reader);
            connection.Close();

            return dtData.DefaultView;
        }

1 Ответ

0 голосов
/ 07 апреля 2019

С помощью: как связать ComboBox с DataTable

Я создал собственную таблицу данных в памяти, так как не могу точно воспроизвести вашу среду.

        DataTable dt = new DataTable("Countries");
        dt.Columns.Add(new DataColumn("CountryName"));

        DataRow australia = dt.NewRow();
        australia["CountryName"] = "Australia";
        dt.Rows.Add(australia);

        DataRow japan = dt.NewRow();
        japan["CountryName"] = "Japan";
        dt.Rows.Add(japan);

        cmbAllData.DisplayMemberPath = "CountryName";
        cmbAllData.SelectedValuePath = "Australia";

        cmbAllData.ItemsSource = dt.DefaultView;

Таким образом, ключевым моментом здесь является установка DisplayMemberPath и SelectedValuePath, а также ComboBox.ItemSource.После того, как я это сделаю, «system.data.datarowview» больше не появляется, и вы видите нижележащие строки таблицы данных.

Вы возвращаете DefaultView, что хорошо, вам просто нужно реализоватьвышеупомянутая логика, которую я изложил после вашего звонка в GetAllCountries.

Надеюсь, это решит вашу проблему для вас, если что-то не ясно, не стесняйтесь просить разъяснений.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...