Posted
Filed under .NET/C#
1. 일단 소스 코딩에 앞서, 아래의 그림과 같이 각각의 텍스트 박스들의 속성을 변경한다.
사용자 삽입 이미지

2. Visual Studio 속성 창을 통하여 위의 그림과 같은 이름으로 변경한다.
사용자 삽입 이미지
3. MonthCalendar 컨트롤을 더블클릭하여 소스 코딩창으로 전환 또는 아래의 그림과 같이 DateChanged 이벤트를 준다.(DateChanged 이벤트를 더블클릭하면 된다.)
사용자 삽입 이미지
4. 그리고 다음과 같이 소스를 코딩 하여 준다.

private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {
            //해당 날짜를 선택하면 텍스트 박스에 해당 요일이 선택되게끔 한다.
            tb_selDay.Text = monthCalendar1.SelectionRange.Start.ToShortDateString();

            //오늘 날짜로 부터 몇일이 경과 되었는지를 확인해 주도록 한다.
            tb_today.Text = (monthCalendar1.SelectionRange.Start - today).TotalDays.ToString();
        }

5. 클래스 이름과 동일한 메소드(=생성자)안과 윗부분에 다음과 같은 구문을 넣어준다.

DateTime today = new DateTime();
        
        public Form1()
        {
            InitializeComponent();
            today = monthCalendar1.SelectionStart;
        }


6. 디자인 보기 모드로 이동후 버튼을 더블클릭 또는 이벤트에서 Click항목을 더블클릭 후 다음과 같은 코드를 넣어 준다.
private void button1_Click(object sender, EventArgs e)
        {
            tb_date2.Text = today.AddDays(Int32.Parse(tb_date.Text)).ToLongDateString();
        }

전체적인 소스는 다음과 같다.
>
using System;
using System.Windows.Forms;

namespace 기념일계산기
{
    public partial class Form1 : Form
    {
        DateTime today = new DateTime();
        
        public Form1()
        {
            InitializeComponent();
            today = monthCalendar1.SelectionStart;
        }

        private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e)
        {
            //해당 날짜를 선택하면 텍스트 박스에 해당 요일이 선택되게끔 한다.
            tb_selDay.Text = monthCalendar1.SelectionRange.Start.ToShortDateString();

            //오늘 날짜로 부터 몇일이 경과 되었는지를 확인해 주도록 한다.
            tb_today.Text = (monthCalendar1.SelectionRange.Start - today).TotalDays.ToString();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            tb_date2.Text = today.AddDays(Int32.Parse(tb_date.Text)).ToLongDateString();
        }
    }
}

마지막으로 기념일 부분을 추가하는 부분은 다음 포스팅에서
2010/02/05 00:22 2010/02/05 00:22
Posted
Filed under .NET/C#
C# 윈폼을 이용하여 기념일 계산기 만들기..
뭐.. 일단은.. 뭐시기, 거시기 해 보입니다만,
일단은.. 완성 작품입니다.
사용자 삽입 이미지
뭐 별거 없습니다.
왼쪽 달력에서 해당 날짜를 선택하면... 선택한 날짜가 나타나고.
오늘 날짜로부터 얼마가 지났는가 확인해주고.

프로그램 하단부에.. 텍스트 박스에 10이라는 글자를 입력후 계산하기 버튼을 눌렀을경우에, 오늘날짜로부터 10일 후의 날짜를 계산해 주고, 특정 기념일이 되었을 경우에. 기념일을 나타내주도록 하는 아주 허접하고도 간단한 프로그램입니다...

일단, 이 프로그램을 작성하는데 있어서 Visual Stduio 2008 (.NET Framework 3.5)기반으로 제작하였습니다.

일단 이번에는 Visual Stduio 2008을 이용해서 C# 언어를 이용하여 윈폼을 제작하도록 하겠습니다.

1. 그림과 같이 Visual Studio 2008 을 Open!!
사용자 삽입 이미지

2. 파일->새로만들기->프로젝트를 하여 새 프로젝트를 오픈합니다.
사용자 삽입 이미지

또는, 그림과 같이.. 만들기 : 프로젝트(P) 클릭하여 새 프로젝트를 오픈하셔도 됩니다.
사용자 삽입 이미지

3. 새 프로젝트 창에서 프로젝트 형식은 Visual C# 을 선택하시고 템플릿은 Windows Form 응용 프로그램을 선택합니다.
사용자 삽입 이미지
프로젝트 이름, 위치등을 적절하게 지정하신후 확인 버튼을 누릅니다.(저와 같은 경우에는 프로젝트 이름을 기념일계산기라고 정하였습니다.)

5. 확인 버튼을누르고 난 다음의 화면입니다..
사용자 삽입 이미지

6.폼을 선택하시고 속성창에서 Text 속송을 기념일 계산이라고 변경합니다.
사용자 삽입 이미지
7. 도구상자에서 MonthCalendar 를 선택하여 폼으로 가져다 놓습니다.(MonthCalenda항목을 폼으로 드래그 하여 가져다 놓습니다..)
사용자 삽입 이미지
8. 그리고 Label, TextBox, Button 컨트롤도 폼에 가져다 놓습니다.
아래 그림과 같이 디자인 합니다.
사용자 삽입 이미지

일단은 우선 여기까지 포스팅 하겠습니다, 다음 포스팅에서는.. 컨트롤들에 대한 이름을 변경 하는 작업과, 소스 코딩을 하겠습니다..!!
2010/01/16 23:53 2010/01/16 23:53