Подтвердить что ты не робот

Диалог свойств соединения winforms для строки конфигурации

Есть ли способ отобразить диалоговое окно свойств соединения для просмотра строки соединения (для базы данных) во время выполнения?

Как я хочу, чтобы пользователь мог подключаться к различным базам данных с помощью графического интерфейса. Тот же, что и в диалоговом окне свойств подключения Visual Studio.

Заранее спасибо

http://www.freeimagehosting.net/uploads/c59e853019.jpg

4b9b3361

Ответ 1

Посмотрите на эту статью, объясняя, что именно вы ищете. Она говорит следующее:

  1. Вам нужно будет добавить пару ссылок на ваш проект:

    • OLE DB Service Component 1.0 Библиотека типов
    • Библиотека данных Microsoft ActiveX 2.x
  2. Используйте следующий код:

    using MSDASC;
    using ADODB;
    
    private string BuildConnectionString()
    {
         string strConnString = "";
         object _con = null;
         MSDASC.DataLinks _link = new MSDASC.DataLinks();
         _con = _link.PromptNew();
         if (_con == null) return string.Empty;
         strConnString = ((ADODB.Connection)_con).ConnectionString;
         return strConnString;
    }
    

Ответ 2

Я искал именно это, и похоже, что Microsoft опубликовала исходный текст для диалога подключения Visual Studio, чтобы его можно было использовать за пределами VS:

Я только что попробовал, все отлично работает :)

Обновление 7/2019

Поскольку сайт Microsoft Code не работает, и официальной публикации Microsoft для Data Connection Dialog к Data Connection Dialog похоже, нет, здесь есть ссылка на репозиторий пользователей Github с кодом Microsoft.

https://github.com/kjbartel/ConnectionDialog

Оригинальная, но сейчас мертвая ссылка http://code.msdn.microsoft.com/Connection

Ответ 3

Это довольно старый, но там статья - может иметь для вас некоторое вдохновение.

Ответ 4

Я не знаю, существует ли для него предопределенная форма, но вы можете отказаться от создания своей собственной формы и использовать ее DbConnectionStringBuilder (SqlConnectionStringBuilder, OracleConnectionStringBuilder, OleDbConnectionStringBuilder), чтобы создать строку соединения из параметров, введенных пользователем в вашей пользовательской созданной форме.