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

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

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

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

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

Ответ 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), чтобы создать строку соединения из параметров, введенных пользователем в вашей пользовательской созданной форме.