TodoForm의 실행폼입니다.
public TodoForm()
{
InitializeComponent();
useridx_combobox.DataSource = new List<string>()
{
"1","2","3","4","5"
};
useridx_combobox.SelectedText = "1";
DataTable dataTable = todoDBMan.select();
int y = 90;
int evenOdd = 1;
foreach (DataRow row in dataTable.Rows)
{
int idx = int.Parse(row["idx"].ToString());
string title = row["title"].ToString();
string content = row["content"].ToString();
DateTime finishdate = new DateTime(
int.Parse(row["finishdate"].ToString().Split('-', ' ')[0]),
int.Parse(row["finishdate"].ToString().Split('-', ' ')[1]),
int.Parse(row["finishdate"].ToString().Split('-', ' ')[2])
);
Todo todo = new Todo();
todo.idx = idx;
todo.title = title;
todo.content = content;
todo.finishdate = finishdate;
makeTodo(10, y, todo,evenOdd%2);
y += 230;
}
makeTodo 를 불러와서 x축에 10, y축에 기본 90을 하고 230을 추가로 더해준다.
데이터베이스에 있는 데이터 갯수만큼 panel이 만들어 진다.
evenOdd는 짝수와 홀수 에 panel 색을 바꿔준다.
이러면 가독성이 좀더 좋아질 수 있다.
디자인.cs에 있는
panel4를 능동적으로 만들어준다.
public void makeTodo(int panelx, int panely, Todo todo, int evenOdd)
{
System.Windows.Forms.CheckBox checkBox1 = new System.Windows.Forms.CheckBox();
Label finish_lb_value = new Label();
Label content_lb_value = new Label();
Label title_lb_value = new Label();
Label finish_lb = new Label();
Label content_lb = new Label();
Label title_lb = new Label();
Panel panel4 = new Panel();
#region panel4
//
// finish_lb_value
//
finish_lb_value.AutoSize = true;
finish_lb_value.Location = new Point(13, 110);
finish_lb_value.Name = "finish_lb_value";
finish_lb_value.Size = new Size(64, 12);
finish_lb_value.TabIndex = 5;
finish_lb_value.Text = todo.finishdate.ToString("yyyy/MM/dd");
//
// content_lb_value
//
content_lb_value.AutoSize = true;
content_lb_value.Location = new Point(13, 54);
content_lb_value.Name = "content_lb_value";
content_lb_value.Size = new Size(46, 12);
content_lb_value.TabIndex = 4;
content_lb_value.Text = todo.content;
//
// title_lb_value
//
title_lb_value.AutoSize = true;
title_lb_value.Location = new Point(89, 11);
title_lb_value.Name = "title_lb_value";
title_lb_value.Size = new Size(24, 12);
title_lb_value.TabIndex = 3;
title_lb_value.Text = todo.title;
//
// finish_lb
//
finish_lb.AutoSize = true;
finish_lb.Location = new Point(13, 81);
finish_lb.Name = "finish_lb";
finish_lb.Size = new Size(64, 12);
finish_lb.TabIndex = 2;
finish_lb.Text = "FinishDate";
//
// content_lb
//
content_lb.AutoSize = true;
content_lb.Location = new Point(13, 34);
content_lb.Name = "content_lb";
content_lb.Size = new Size(46, 12);
content_lb.TabIndex = 1;
content_lb.Text = "content";
//
// title_lb
//
title_lb.AutoSize = true;
title_lb.Location = new Point(13, 11);
title_lb.Name = "title_lb";
title_lb.Size = new Size(24, 12);
title_lb.TabIndex = 0;
title_lb.Text = "title";
//
// checkBox1
//
checkBox1.AutoSize = true;
checkBox1.Location = new Point(147, 106);
checkBox1.Name = "checkBox1";
checkBox1.Size = new Size(48, 16);
checkBox1.TabIndex = 6;
checkBox1.Text = "완료";
checkBox1.UseVisualStyleBackColor = true;
if (evenOdd % 2 == 0)
panel4.BackColor = Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(255)))), ((int)(((byte)(192)))));
else
panel4.BackColor = Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(224)))), ((int)(((byte)(192)))));
//
// panel4
//
panel4.BackColor = SystemColors.Info;
panel4.Controls.Add(checkBox1);
panel4.Controls.Add(finish_lb_value);
panel4.Controls.Add(content_lb_value);
panel4.Controls.Add(title_lb_value);
panel4.Controls.Add(finish_lb);
panel4.Controls.Add(content_lb);
panel4.Controls.Add(title_lb);
panel4.Location = new Point(panelx, panely);
panel4.Name = "panel4";
panel4.Size = new Size(270, 220);
panel4.TabIndex = 1;
panel4.ResumeLayout(false);
panel4.PerformLayout();
this.panel1.Controls.Add(panel4);
#endregion
'C#' 카테고리의 다른 글
C# 할일 관리 프로그램(6) 완료버튼(select) (0) | 2024.03.07 |
---|---|
C# 할일 관리 프로그램 할일관리(5)(사용자관리 idx 연결) (1) | 2024.03.06 |
C# 할일 관리 프로그램(3) 할일관리(insert) (0) | 2024.03.04 |
C# 할일 관리 프로그램(2) 사용자관리(insert/select) (0) | 2024.02.28 |
c# 할일 관리 프로그램(1) (0) | 2024.02.27 |