분류 전체보기
-
WCF 구현.NetFramWork/WCF 2022. 7. 6. 17:07
먼저 WCF를 사용하기 위해서는 어셈블리 참조 추가가 필요! 어셈블리명 : System.ServiceModel 네임스페이스 : using System.ServiceModel; --서비스 구성 절차-- 1) interface를 만들면서 계약 구성 [ServiceContract] //서비스 계약 [OperationContract] //메시지 계약 2) 서비스 객체를 정의 ( 계약된 인터페이스를 상속) 구현 상속( 상속받은 추상 메서드를 정의) 3) 호스팅 (IIS or exe) 1) 호스팅 객체를 만듬 (첫번째 인자 : 서비스 객체 정보 2번째 인자 : 주소) 2) endpoint구성 (첫번째인자 : 인터페이스, 두번째인자 : 바인딩 처리, 세번째 인자 : 주소) 주소 작성후 아래 화면이 뜨면 성공!! 클라..
-
WCF 맛보기.NetFramWork/WCF 2022. 7. 6. 17:04
01. WCF 걸음마 서비스 종점 – 서비스 종점을 구성하는 서비스 주소, 바인딩, 계약의 개념 서비스 구현에 필요한 서비스 호스트 서비스의 클라이언트를 구성하는 요소 WCF란? - 웹 서비스 기반의 통신 프레임워크 (callee, service) (caller, client) - 클라이언트와 서비스 사이에서 상호작용하며 둘 사이의 통신을 보다쉽고 강력하게 해 주는 역할 - 메시징 프레임워크다. WCF기반을 통해 클라이언트와 서비스는 XML을 주고받는다. 주소, 바인딩, 계약의 개념 WCF의 ABC ( Address, Binding, Contract) WCF에서의 서비스 주소란? 클라이언트가 서비스를 호출하기 위해 사용되는 주소 일반적으로 말하는 인터넷 주소 바인딩이 어떤 프로토콜을 사용하는 가에 따라 ..
-
데이터 바인딩 (4).NetFramWork/WPF 2022. 6. 28. 18:14
WPF 바인딩 시스템의 핵심 기능 중 하나가 형식 변환이며 형식 변환기를 사용하여 서로 다른 속성끼리의 바인딩이 가능하도록 한다. 호환 가능한 형식 변환은 WPF 바인딩에서 자동으로 변환 형식 변환되지만 자동 형식 변환이 불가능한 형식은 직접 형식 변환기를 작성할 수 있다. 만약 전화번호 Person 객체에 성별을 구분하는 속성 Male 을 정의하고 남자면 true, 여자면 false 값을 갖도록 한다면, UI 에서 RadioButton 을 사용하여 남, 여를 구분할 수 있다. Person 객체의 속성 Male 을 보고 남, 여를 UI RadioButton 에 나타내므로 여기서 남자에 해당하는 RadioButton 이 true 라면 여자에 해당하는 RadioButton 은 false 가 되어야하며 반대로..
-
데이터 바인딩 (3).NetFramWork/WPF 2022. 6. 27. 20:35
Clear 버튼을 이용한 TextBox 컨트롤 지우기 결과에서 볼 수 있듯 Clear 버튼을 클릭하면 데이터 원본 객체인 per 의 Name 과 Phone 의 모든 텍스트가 지워지지만 UI 에 변경이 적용되지 않는다. 이것은 per.Name 이나 per.Phone 속성은 일반 .Net 속성이므로 속성의 변경(데이터 원본의 변경) 사실을 UI 에 동기화하지 못한다. private void eraseButton_Click(object sender, RoutedEventArgs e) { per.Name = ""; per.Phone = ""; } 이 코드에서 per 의 속성을 변경하지만 이 속성과 바인딩되어 있는 UI 는 변경되지 않는다. 데이터 원본(원본 객체의 속성)의 변경을 UI 에 통보하기 위한 바인딩을..
-
데이터 바인딩 (2).NetFramWork/WPF 2022. 6. 27. 19:43
WPF 의 바인딩 시스템을 사용하면 지금까지 우리가 수동으로 진행했던 UI 와 데이터 객체의 통신(동기화)를 자동으로 구축할 수 있다. 바인딩 시스템의 핵심 기능은 두 가지로 UI 의 변경을 데이터 객체로 데이터 객체의 변경을 UI 로 자동 통신하는 동기화 기능과 서로 다른 형식의 동기화를 위한 적절한 형식 변환 기능이다. 바인딩 시스템은 UI 의 의존속성과 데이터 객체의 속성이 연결되는 형태로 동작한다. 바인딩을 이용하여 이름과 전화번호 TextBox 컨트롤 UI 에 Person 객체를 출력 결과 XAML 에서는 이것이 바인딩 코드의 전부다. 이제 UI 의 의존 속성 Text 와 바인딩 할(연결할) 데이터 객체(데이터 원본이라한다)를 설정하는 것 뿐이다. 이것은 C# 코드에서 panel.DataCont..
-
데이터 바인딩(1).NetFramWork/WPF 2022. 6. 27. 17:44
WPF 는 데이터 바인딩이라는 기술을 통해서 프로그램 내부의 데이터를 사용자에게 전달하거나 사용자가 입력한 데이터를 프로그램 내부의 데이터로 변환하는 자동화 기술을 제공한다. 대부분의 애플리케이션은 UI 와 그 UI 와 연결된 데이터 사이의 통신이 필수적이며 이와 같은 작업을 수동으로 처리하기 위해 많은 코드를 필요로 한다. WPF 의 바인딩 시스템을 사용하면 수동으로 처리해야 하는 UI 와 데이터 사이의 통신의 통신을 쉽게 처리할 수 있을 뿐만 아니라 둘 사이의 형식 변환이나 정렬, 필터링, 그룹핑 등의 여러 작업을 자동으로 수행한다. 데이터 바인딩을 하기전 사용했던 데이터와 UI 관계를 먼저 살펴보자 !! 01) 데이터를 TextBox 컨트롤 UI에 보이기 Person 객체에 보관된 데이터 Name ..
-
버블링 과 터널링 (라우트된 이벤트).NetFramWork/WPF 2022. 6. 24. 17:47
WPF 는 ‘라우트된 이벤트’라는 새로운 개념의 이벤트 메커니즘을 제공한다. 의존 속성처럼 이벤트도 WPF 만의 기능(컨텐츠 모델)에 맞게 새로 정의된 이벤트로 크게 두 가지 버블링(bubbling) 이벤트와 터널링(tunneling) 이벤트가 있다. 터널링 이벤트는 부모 -> 자식 요소로 이벤트가 라우팅(전달)되며 연속하게 발생하고 버블링 이벤트는 마우스를 실제 위치한 자식 -> 부모 요소로 라우팅(전달)되며 발생한다. WPF 의 대부분의 컨트롤은 컨텐츠 모델에 의해 다른 여러 요소들을 포함하므로 ‘라우트된 이벤트’개념 없이 일반 .Net 이벤트를 사용한다면 컨트롤의 이벤트를 처리하기 위해 포함하는 컨텐츠의 모든 이벤트 처리 코드를 작성해야 한다. WPF 의 새로운 ‘라우트된 이벤트’모델을 사용하면 관..
-
레이아웃 <Grid>.NetFramWork/WPF 2022. 6. 23. 17:51
패널 특징 자식 요소 겹침 Canvas 가장 기본적인 패널로 자식 요소를 원하는 위치에 배치할 수 있다. O StackPanel 가로나 세로 방향으로 자식 요소를 일렬로 정렬한다. X WrapPanel StackPanel 과 비슷하지만 자식 요소를 왼쪽에서 오른쪽으로 차례로 배치하며 크기를 벗어나면 다음 줄에 배치한다. X DockPanel 각 지정 방향에 자식 요소를 배치한다. X Grid 가장 강력한 패널로 표 형태로 자식 요소를 배치한다. O Grid 패널은 패널 중 가장 강력한 패널로 자식 요소를 표 형태로 배치하며 자식 요소들 간의 간격과 배율을 유지 시킬 수 있다. 행과 열로 이루어진 Grid 는 셀이라 부르는 행,열의 위치에 자식 요소를 배치하거나 여러 셀에 자식 요소를 배치할 수 있다. 다..