132 lines
4.6 KiB
C#
132 lines
4.6 KiB
C#
using DBMigration.Models;
|
|
|
|
namespace DBMigration.Forms
|
|
{
|
|
public partial class ConnectionForm : Form
|
|
{
|
|
public ConnectionInfo ConnectionInfo { get; private set; }
|
|
|
|
public ConnectionForm()
|
|
{
|
|
InitializeComponent();
|
|
this.Load += ConnectionForm_Load;
|
|
}
|
|
|
|
private void ConnectionForm_Load(object? sender, EventArgs e)
|
|
{
|
|
UpdateCredentialsFields();
|
|
this.txtServer.Text = "10.131.15.18";
|
|
this.txtDatabase.Text = "EE";
|
|
this.txtUserId.Text = "eeuser";
|
|
this.txtPassword.Text = "Amkor123!";
|
|
this.chkWindowsAuth.Checked = false;
|
|
}
|
|
|
|
private void UpdateCredentialsFields()
|
|
{
|
|
bool isWindowsAuth = chkWindowsAuth.Checked;
|
|
txtUserId.Enabled = !isWindowsAuth;
|
|
txtPassword.Enabled = !isWindowsAuth;
|
|
}
|
|
|
|
private void InitializeComponent()
|
|
{
|
|
this.txtServer = new TextBox();
|
|
this.txtDatabase = new TextBox();
|
|
this.txtUserId = new TextBox();
|
|
this.txtPassword = new TextBox();
|
|
this.chkWindowsAuth = new CheckBox();
|
|
this.btnConnect = new Button();
|
|
this.btnCancel = new Button();
|
|
this.SuspendLayout();
|
|
|
|
// txtServer
|
|
this.txtServer.Location = new Point(12, 12);
|
|
this.txtServer.Size = new Size(200, 23);
|
|
this.txtServer.PlaceholderText = "서버 이름";
|
|
|
|
// txtDatabase
|
|
this.txtDatabase.Location = new Point(12, 41);
|
|
this.txtDatabase.Size = new Size(200, 23);
|
|
this.txtDatabase.PlaceholderText = "데이터베이스 이름";
|
|
|
|
// txtUserId
|
|
this.txtUserId.Location = new Point(12, 70);
|
|
this.txtUserId.Size = new Size(200, 23);
|
|
this.txtUserId.PlaceholderText = "사용자 ID";
|
|
|
|
// txtPassword
|
|
this.txtPassword.Location = new Point(12, 99);
|
|
this.txtPassword.Size = new Size(200, 23);
|
|
this.txtPassword.PasswordChar = '*';
|
|
this.txtPassword.PlaceholderText = "비밀번호";
|
|
|
|
// chkWindowsAuth
|
|
this.chkWindowsAuth.Location = new Point(12, 128);
|
|
this.chkWindowsAuth.Size = new Size(200, 23);
|
|
this.chkWindowsAuth.Text = "Windows 인증 사용";
|
|
this.chkWindowsAuth.CheckedChanged += (s, e) => UpdateCredentialsFields();
|
|
|
|
// btnConnect
|
|
this.btnConnect.Location = new Point(12, 157);
|
|
this.btnConnect.Size = new Size(95, 23);
|
|
this.btnConnect.Text = "연결";
|
|
this.btnConnect.Click += BtnConnect_Click;
|
|
|
|
// btnCancel
|
|
this.btnCancel.Location = new Point(117, 157);
|
|
this.btnCancel.Size = new Size(95, 23);
|
|
this.btnCancel.Text = "취소";
|
|
this.btnCancel.Click += BtnCancel_Click;
|
|
|
|
// ConnectionForm
|
|
this.ClientSize = new Size(224, 192);
|
|
this.Controls.AddRange(new Control[] {
|
|
this.txtServer,
|
|
this.txtDatabase,
|
|
this.txtUserId,
|
|
this.txtPassword,
|
|
this.chkWindowsAuth,
|
|
this.btnConnect,
|
|
this.btnCancel
|
|
});
|
|
this.FormBorderStyle = FormBorderStyle.FixedDialog;
|
|
this.MaximizeBox = false;
|
|
this.MinimizeBox = false;
|
|
this.StartPosition = FormStartPosition.CenterParent;
|
|
this.Text = "데이터베이스 연결";
|
|
this.ResumeLayout(false);
|
|
this.PerformLayout();
|
|
}
|
|
|
|
private void BtnConnect_Click(object? sender, EventArgs e)
|
|
{
|
|
ConnectionInfo = new ConnectionInfo
|
|
{
|
|
ServerName = txtServer.Text,
|
|
DatabaseName = txtDatabase.Text,
|
|
UserId = txtUserId.Text,
|
|
Password = txtPassword.Text,
|
|
UseWindowsAuthentication = chkWindowsAuth.Checked
|
|
};
|
|
|
|
DialogResult = DialogResult.OK;
|
|
Close();
|
|
}
|
|
|
|
private void BtnCancel_Click(object? sender, EventArgs e)
|
|
{
|
|
DialogResult = DialogResult.Cancel;
|
|
Close();
|
|
}
|
|
|
|
private TextBox txtServer;
|
|
private TextBox txtDatabase;
|
|
private TextBox txtUserId;
|
|
private TextBox txtPassword;
|
|
private CheckBox chkWindowsAuth;
|
|
private Button btnConnect;
|
|
private Button btnCancel;
|
|
}
|
|
}
|