StandardWeightCalculator
TRACE macro
TRACE macro
-윈도우 응용프로그램 개발시 Visual Studio IDE의 Output Window (출력창)에 Debug하는 내용을 출력하고자 할 때 System.Diagnostics.Trace.WriteLine(…..)을 사용
-기존의 C# Console 응용프로그램에서 System.Console.WriteLine(….)와 동일
-기존의 MFC 윈도우 프로그래밍에서 TRACE 매크로와 비슷 (C의 printf와 동일한 형식 지원)
-기존의 WIN32 윈도우 프로그래밍에서 OutputDebugString 함수와 같은 기능 (C의 printf와 동일한 형식 지원)
Getting Started with Windows Forms
http://msdn.microsoft.com/en-us/library/ms229601(VS.80).aspx
- Creating a New Windows Form
- Creating Event Handlers in Windows Forms
- Adjusting the Size and Scale of Windows Forms
- Changing the Appearance of Windows Forms
- Windows Forms Controls
- User Input in Windows Forms
- Dialog Boxes in Windows Forms
- Windows Forms Data Binding
- Windows Forms Security
- ClickOnce Deployment for Windows Forms
- How to: Access Keyed Collections in Windows Forms
VC# Windows Forms Application
- .NET2010
Visual C# Windows Forms Application 프로젝트 새로 만들기
Dialog-based App 프로젝트 새로 만들기
- 메뉴에서 File->New->Project->Visual C# 템플릿->Windows Forms Application를 선택한 후 “프로젝트 이름(예를 들어, WindowFormHelloWorldApplication)”을 적고 확인버튼을 누르면 빈폼 프로젝트가 생성된다.
코드 추가
- Toolbox(도구상자) 에서 컨트롤을 선택(예를 들어, Label 또는 Button)하여 Dialog기반의 Form 안에 추가하여 편집한다.
컨트롤에 이벤트 추가하기
-컨트롤 (예를들어, 버튼을 더블클릭하면 또는 이벤트목록중 Click이벤트에 더블클릭하면)에 클릭 이벤트에 대한 이벤트핸들러에 내용(예를 들어, 레이블의 Text를 “Button Clicked”)을 작성한다.
private void button1_Click(object sender, EventArgs e)
{
// button1을 클릭하면 label1에 “Button Clicked”출력
label1.Text = “Hello World!”;
}
빌드(F7) 후 실행(F5)하기
PersonLibCollectionTest
PersonLibCollectionTest
-PersonLib.dll 사용 (Person.cs & PersonComparer.cs)
-List<Person> 사용
-FileIO 사용
FileIO
FileIO
http://support.microsoft.com/kb/304430
-한글 텍스트파일 읽기와 쓰기
-csv 파일 Parse 하기
C# Point & Point3D Class Assembly
C# Point & Point3D Class 를 DLL로 작성한후 PointTest 클래스에서 사용
새프로젝트 -> Class Library 선택해서 PointLib 로 생성
컴파일 후에 PointLib.dll 생성
—————————————————————————————————————-
PointLib.dll 을 다른 프로그램에서 사용하기
새프로젝트 -> Console Application 로 선택해서 PointTest 생성소스코드 추가 후에 Reference에 PointLib.dll을 추가하기
컴파일 후 PointTest.exe 생성
C# Generic Class vs. C++ Template Class
C#
http://msdn.microsoft.com/en-us/library/sz6zd40f(VS.80).aspx
C++ Standard Template Library
http://dis.dankook.ac.kr/lectures/hci07/entry/lecture2-template
C# Collection Interface Delegate
http://msdn.microsoft.com/en-us/library/system.collections.generic(v=VS.80).aspx
http://dis.dankook.ac.kr/lectures/hci10/entry/C-Collection-Interface-Delegate
http://dis.dankook.ac.kr/lectures/hci10/entry/Generic-List-Class
Collections (예로, List, ArrayList, Hashtable등)은 ICollection<T> 인터페이스를 구현한다.
List 클래스의 경우는 IList<T> 인터페이스를 또한 구현한다.
List<T> 컬랙션 클래스의 메소드 (예를 들어, Exists, Find, TrueForAll 등)는 특정 헬퍼대리자 (예를 들어, delegate void Action<T>, delegate bool Predicate<T> 등과 같은)를 사용하여, 중복되는 코드를 간결하게 만들수있다.