본문 바로가기

WPF37

응용프로그램 Application 클래스 이벤트 처리 WPF 응용 프로그램에서 Application 클래스의 이벤트들을 처리할 필요가 있다면 해당하는 이벤트에 대한 이벤트 핸들러를 설치해야 하지만, 가장 편리한 방법은 Application 클래스를 상속하는 클래스를 정의하는 방법입니다. using System; // Application 클래스를 포함하는 Namespace 선언 using System.Windows; using System.Windows.Input; namespace Chapter1 { // Application 클래스 상속 class InheritApp : Application { [STAThread] public static void Main() { InheritApp app = new InheritApp (); app.Run(); } .. 2007. 12. 13.
클래스 계층 구조 WPF의 모든 클래스는 Object 로부터 상속을 받으며 Application이 실행되면 onStartup() 이벤트가 override되어 프로그램이 시작됩니다. 실제 우리 눈에 보이는 Window 클래스까지 여러단계를 거쳐... Window에 여러 Control을 표시합니다. WPF 공부를 하시는 모든분들은 위 그림의 계층구조를 계속해서 접하시게 될겁니다. 하나하나 구조를 파악하면서 프로그래밍을 하다보면 WPF 클래스의 계층간 관계나 구조를 자연스럽게 파악하실 수 있을것입니다. 1년전에는 기본 컨트롤 위주로 Markup Language 즉 XAML을 가지고 강좌를 진행했습니다. 조만간에 진행될 WPF 강좌는 XAML과 실제 동적으로 C#코드로도 구현하는 방법을 통하여 WPF 프로그래밍을 하는 방법을 강.. 2007. 12. 12.
[XPS] Fxied Documents XPS(XML Paper Specification)net Framework 3.0과 Windows Vista가 출시되면서 MS에서 밀고 있는 새로운 형태의 전자출판 문서형식입니다. 대표적인 전자출판 문서파일은 Adobe사의 PDF(portable document format)가 있습니다. XPS는 크게 Fixed Documents와 Flow Documents 2가지 형태로 나누어 집니다. 이번강좌에서는 Fixed Documents에 대해 알아보겠습니다. Fixed Documents는 Read-Only의 읽기전용이며 용도는 XPS로 출판하여 보고서 형태의 기안을 작성한다거나 보안을 걸어서 특정사람에게만 열어보게 할 수도 있습니다. XPS 문서를 보려면 XPS DocumentViwer Control이 필요합.. 2007. 8. 10.
[XPS] View and Generate XPS View and Generate XPS Operating System Download Description Windows Vista None Required XPS documents open within Internet Explorer 7.0 or higher. Any application can generate XPS documents using the Microsoft XPS Document Writer. Windows XP Windows Server 2003 Microsoft .NET Framework 3.0 XPS document viewing and generation capabilities are included in Microsoft .NET Framework 3.0. XPS document.. 2007. 8. 10.
[Controls] 25. BulletDecorator BulletDecorator는 여러개의 다른 형태의 컨트롤을 그룹화 해서 묶는 컨트롤입니다. Image, TextBlock Control을 이용하여 다른 타입의 컨트롤을 만들어보겠습니다. 그림 1.예제1 안녕하세요 taedi 입니다.. 지금 보시는 지도는 유럽입니다. 두번째 예제는 Image, TextBlock, CheckBox, RadioButton, Button Control을 이용하여 다른 타입의 컨트롤을 만듭니다. 그림 2.예제2 CheckBox Bullet. TextBox Bullet. RadioButton Bullet Image Bullet. B Button Bullet. ※ 테스트 환경 -----------------------------------------------------------.. 2007. 8. 10.
[Controls] 24. Element:Shape (Path - 2) 이번시간에는 지난시간에 이어 Path에 대해 좀더 자세히 알아보겠습니다. geometry는 말그대로 도형이라는 뜻 이외에 기하학이라는 뜻도 가지고 있습니다. 'PathFigureCollection 형식에는 여러가지 노드가 존재합니다. PathFigureCollection EllipseGeometry LineGeometry RectangleGeometry PathGeometry GeometryGroup CombinedGeometry 가장 먼저 LineGeometry를 알아보겠습니다. 그림 1.LineGeometry 가장 중요한 속성은 StartPoint와 EndPont입니다. Line의 X1, Y1, X2, Y2의 값을 지정하는 것과 비슷합니다. StartPoint 의 첫번째 값과 두번째값은 Line의 X.. 2007. 2. 1.
[Controls] 23. Element:Shape (Path - 1) 이번시간에는 path에 대해 알아보자. path는 거의 모든 도형을 다 만들수 있습니다. Data 속성에 의해서 다양한 모양을 표현합니다. 선, 원, 곡선.... 등 복합적인 도형의 모습을 표현할 수 있습니다. path의 작성방법에는 두가지 유형이 있는데 StreamGeometry와 'PathFigureCollection 두가지가 있습니다. StreamGeometry는 Data를 일렬로 나열하여 도형을 그리고 'PathFigureCollection은 하나의 노드를 뽑아서 원,호, 다양한 도형을 표현할 수 있습니다 그러면 각각의 형식에 대하여 예제를 통해 알아 보겠습니다. 그림 1.Path 실행 예제 코드를 보면 조금 형식이 틀리다는 것을 알수 있습니다. 그중에 첫번째 StreamGeometry를 보면 D.. 2007. 2. 1.
[Controls] 22. Element:Shape (Polyline/Polygon) 이번 강좌에서는 Polyline과 Polygon에 대해 알아보도록 하겠습니다. Polyline/Polygon은 선과 선을 연결하여 만드는 도형입니다. 두 도형은 상당히 유사한 면이 많지만 Polyline은 선과 선의 끝이 만나지 않는 도형이며 Polygon은 선과 선의 끝점이 만나 완벽한 도형이 됩니다. Polyline과 Polygon의 가장 중요한 속성 몇가지를 알아보겠습니다. Points: 선을 만들기 위한 좌표 값 FillRule: 도형을 채우기 위한 설정(EvenOdd / FillRule) 그럼 여기서 두 도형의 차이점을 예제를 통해서 알아보겠습니다. 우리 개발자들은 수백번 듣는 것 보다 한 번 타이핑 해보는 것이 이해가 빠르다는 것을 그간 경험을 통해 알고 있습니다. 어디선가 딴지를 거는 이가 .. 2007. 1. 31.
[Controls] 21. Element:Shape (Line:선) 이번강좌에서는 WPF에서 Line(선)에 대해 알아보겠습니다. Line은 두 지점 이어서 직선을 연결을 합니다. Line역시 Shape 클래스에서 상속을 받게 됩니다. Shape 클래스의 직선을 비롯한 모든 선과 도형 클래스는 간단한 선을 그리는 것에서 복잡한 백터 기반의 그래픽 표현도 가능합니다. System.Windows.Shapes.Line Line은 X1, Y1, X2, Y2 4가지의 좌표값을 기준으로 해서 그리기를 합니다. X1 : 선의 시작 X 좌표 Y1 : 선의 시작 Y 좌표 X2 : 선의 종료 X 좌표 Y2 : 선의 종료 Y 좌표 위의 4가지 속성은 Line를 그리기 위한 가장 중요하고 핵심적인 속성입니다. 이외에도 다양한 속성이나 이벤트가 있지만 대부분 Shape클래스나 UIElement.. 2007. 1. 30.
[Controls] 20. Element:Shape (Ellipse:원) 위해서 클래스의 상속 구조를 알아야 할 필요가 있습니다. System.Object System.Windows.Threading.DispatcherObject System.Windows.DependencyObject System.Windows.Media.Visual System.Windows.UIElement System.Windows.FrameworkElement 그리고 이 UIElement클래스를 상속받은 FrameworkElement이라는 클래스가있고 다시 이를 상속받은 클래스들은 다양하게 있는데 역시 아래를 참고하시기 바랍니다. Microsoft.Windows.Themes.BulletChrome Microsoft.Windows.Themes.ScrollChrome System.Windows.Contr.. 2007. 1. 28.
[Controls] 19. Border Border Control은 닷넷 프레임워크 3.0이 추가되면서 새로 등장한 Control입니다. 어떠한 영역이나 경계를 지정할때 사용하는 Control입니다. 이번강좌에서는 Border를 지정하고 Button을 클릭하면 Border의 배경색(BackGroundColor)이 변경되서 보여지는 간단한 예제입니다. 그림 1. Border 프로그램 BorderThickness : Border 두께 BorderBrush : Border 색깔 Borderground : Border 배경색 using System; using System.Collections; using System.Collections.Generic; using System.Text; using System.Windows; using System.. 2007. 1. 14.
[Controls] 16. Expender Expender Control은 닷넷 프레임워크 3.0에서 새로 등장한 컨트롤입니다. 아마도 뉴스리더기 같은 프로그램이나 XPS 같은 문서 형태에서 많이 사용될것으로 생각됩니다. 현재는 뉴욕타임지에서 WPF 기반의 XPS 문서 형태의 뉴스리더기를 베타버전으로 만들어 리뷰되어 있습니다. 신문사의 뉴스리더기는 지면관계상 많은 정보를 표현해야 하므로 Expender 같은 컨트롤이 많이 사용될 것으로 봅니다. 그림 1.Expender 프로그램 가장 중요한 속성 몇가지를 살펴보겠습니다. TextWrapping : TextBlock 컨트롤의 Warp 속성은 입력한 글이 한 줄의 끝에 가면 자동적으로 다음줄로 이동하는것을 지정하는 속성입니다. Expendirection=“DOWN, RIGHT, LEFT” : 위치를 .. 2007. 1. 12.