diff --git a/MainApp/MainApp/Controls/Multiple_Query_Control.Designer.cs b/MainApp/MainApp/Controls/Multiple_Query_Control.Designer.cs new file mode 100644 index 0000000..11f5d27 --- /dev/null +++ b/MainApp/MainApp/Controls/Multiple_Query_Control.Designer.cs @@ -0,0 +1,95 @@ + +namespace MainApp.Controls +{ + partial class Multiple_Query_Control + { + /// + /// 필수 디자이너 변수입니다. + /// + private System.ComponentModel.IContainer components = null; + + /// + /// 사용 중인 모든 리소스를 정리합니다. + /// + /// 관리되는 리소스를 삭제해야 하면 true이고, 그렇지 않으면 false입니다. + protected override void Dispose(bool disposing) + { + if (disposing && (components != null)) + { + components.Dispose(); + } + base.Dispose(disposing); + } + + #region 구성 요소 디자이너에서 생성한 코드 + + /// + /// 디자이너 지원에 필요한 메서드입니다. + /// 이 메서드의 내용을 코드 편집기로 수정하지 마세요. + /// + private void InitializeComponent() + { + this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); + this.topGridView = new System.Windows.Forms.DataGridView(); + this.bottomGridView = new System.Windows.Forms.DataGridView(); + this.tableLayoutPanel1.SuspendLayout(); + ((System.ComponentModel.ISupportInitialize)(this.topGridView)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.bottomGridView)).BeginInit(); + this.SuspendLayout(); + // + // tableLayoutPanel1 + // + this.tableLayoutPanel1.ColumnCount = 1; + this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel1.Controls.Add(this.bottomGridView, 0, 1); + this.tableLayoutPanel1.Controls.Add(this.topGridView, 0, 0); + this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill; + this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 0); + this.tableLayoutPanel1.Name = "tableLayoutPanel1"; + this.tableLayoutPanel1.RowCount = 2; + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F)); + this.tableLayoutPanel1.Size = new System.Drawing.Size(454, 400); + this.tableLayoutPanel1.TabIndex = 0; + // + // topGridView + // + this.topGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.topGridView.Dock = System.Windows.Forms.DockStyle.Fill; + this.topGridView.Location = new System.Drawing.Point(3, 3); + this.topGridView.Name = "topGridView"; + this.topGridView.RowTemplate.Height = 23; + this.topGridView.Size = new System.Drawing.Size(448, 194); + this.topGridView.TabIndex = 3; + // + // bottomGridView + // + this.bottomGridView.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize; + this.bottomGridView.Dock = System.Windows.Forms.DockStyle.Fill; + this.bottomGridView.Location = new System.Drawing.Point(3, 203); + this.bottomGridView.Name = "bottomGridView"; + this.bottomGridView.RowTemplate.Height = 23; + this.bottomGridView.Size = new System.Drawing.Size(448, 194); + this.bottomGridView.TabIndex = 4; + // + // UserControl1 + // + this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F); + this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.tableLayoutPanel1); + this.Name = "UserControl1"; + this.Size = new System.Drawing.Size(454, 400); + this.tableLayoutPanel1.ResumeLayout(false); + ((System.ComponentModel.ISupportInitialize)(this.topGridView)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.bottomGridView)).EndInit(); + this.ResumeLayout(false); + + } + + #endregion + + private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1; + private System.Windows.Forms.DataGridView bottomGridView; + private System.Windows.Forms.DataGridView topGridView; + } +} diff --git a/MainApp/MainApp/Controls/Multiple_Query_Control.cs b/MainApp/MainApp/Controls/Multiple_Query_Control.cs new file mode 100644 index 0000000..91bc659 --- /dev/null +++ b/MainApp/MainApp/Controls/Multiple_Query_Control.cs @@ -0,0 +1,52 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel; +using System.Data; +using System.Drawing; +using System.Linq; +using System.Text; +using System.Windows.Forms; + +namespace MainApp.Controls +{ + public partial class Multiple_Query_Control : UserControl + { + public Multiple_Query_Control() + { + InitializeComponent(); + InitInstance(); + } + + private void InitInstance() + { + if (!AdoClient.Instance.SetConnection("peacecloud.synology.me,21433", "Study", "study", "Study123$")) + { + MessageBox.Show("Cannot access database."); + return; + } + + DoWork(); + } + + private void BindTableToGridView(DataGridView gridView, DataTable table) + { + gridView.SuspendLayout(); + gridView.DataSource = table; + gridView.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells; + gridView.ResumeLayout(); + } + + private void DoWork() + { + string sql = @"SELECT * FROM EMPLOYEE; + SELECT E.ENAME, E.JOB, M.ENAME AS MANAGER, D.DNAME, D.LOC FROM EMPLOYEE AS E + LEFT JOIN EMPLOYEE AS M ON E.MANAGER = M.ENO + LEFT JOIN DEPARTMENT AS D ON E.DNO = D.DNO"; + + DataSet dataSet = AdoClient.Instance.Query(sql); + + BindTableToGridView(topGridView, dataSet.Tables[0]); + BindTableToGridView(bottomGridView, dataSet.Tables[1]); + } + } +} diff --git a/MainApp/MainApp/Controls/Multiple_Query_Control.resx b/MainApp/MainApp/Controls/Multiple_Query_Control.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/MainApp/MainApp/Controls/Multiple_Query_Control.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/MainApp/MainApp/MainApp.csproj b/MainApp/MainApp/MainApp.csproj index 28d15f4..6cf4a27 100644 --- a/MainApp/MainApp/MainApp.csproj +++ b/MainApp/MainApp/MainApp.csproj @@ -58,6 +58,12 @@ Paging_Control.cs + + UserControl + + + Multiple_Query_Control.cs + Form @@ -72,6 +78,9 @@ Paging_Control.cs + + Multiple_Query_Control.cs + MainForm.cs diff --git a/MainApp/MainApp/MainForm.cs b/MainApp/MainApp/MainForm.cs index 67d3e26..1fadbb6 100644 --- a/MainApp/MainApp/MainForm.cs +++ b/MainApp/MainApp/MainForm.cs @@ -34,7 +34,11 @@ namespace MainApp //control.Dock = DockStyle.Fill; //this.Controls.Add(control); - Paging_Control control = new Paging_Control(); + //Paging_Control control = new Paging_Control(); + //control.Dock = DockStyle.Fill; + //this.Controls.Add(control); + + Multiple_Query_Control control = new Multiple_Query_Control(); control.Dock = DockStyle.Fill; this.Controls.Add(control); }