이 책은 이론과 실제의 결합에 중점을 두고 있으며 기본적으로 각 ASP.NET 제어 개발 기술 지식 포인트에 해당하는 예제 응용 프로그램이 있습니다.
장 분류에서는 기술 포인트의 범주에 따라 분류되어 있으며, 각 컨트롤 개발 기술 포인트가 자세하게 설명되어 있어 검색 매뉴얼로도 활용이 가능합니다.
목차:
1장 서버 제어 개요 및 개발 환경 배포 1
1.1 사용자 정의 서버 제어 1
1.2 소프트웨어 개발 프로세스에서 서버 제어의 역할 1
1.3 제어 개발 능력 향상 2
1.4 상속 가능한 컨트롤 기본 클래스 소개 2
1.5 간단한 컨트롤 실행 7
1.5.1 간단한 컨트롤 개발 7
1.5.2 배포 및 운영 11
1.6 제어 수명주기 12
1.6.1 개요 12
1.6.2 코드를 사용하여 컨트롤 수명주기 프로세스 추적 14
1.7 이 장의 요약 17
2장 서버 제어 개발의 디버깅 기술 18
2.1 프리셋 코드 예시 18
2.2 디버그 페이지 서버 코드 19
2.3 서버 컨트롤 디버깅 20
2.3.1 실행 모드에서의 디버깅 방법 20
2.3.2 디자인 모드 디버깅 방법 20
2.4 자바스크립트 스크립트 디버깅 방법 22
2.4.1 페이지에서 JavaScript 스크립트 디버깅(방법 1) 22
2.4.2 페이지에서 JavaScript 스크립트 디버깅(방법 2) 23
2.4.3 포함되지 않은 JavaScript 스크립트 파일 디버깅 23
2.4.4 포함된 JavaScript 스크립트 리소스 파일 디버깅 24
2.4.5 효율적인 디버깅을 위한 팁 24
2.5 Ajax 라이브러리는 JavaScript 디버깅을 지원합니다. 26
2.6 이 장의 요약 26
3장 처음부터 서버 컨트롤 개발 27
3.1 기본 클래스 선택 27
3.2 컨트롤 표시 순서 28
3.3 렌더가 컨트롤을 표시하는 여러 가지 방법 30
3.3.1 HTMLTextWriter 클래스를 사용하여 30을 출력
3.3.2 HTML 태그 직접 출력 32
3.3.3 서버 컨트롤의 RenderControl 사용
방법 33
3.4 AddAttributesToRender 메소드 34
3.5 CreateChildControls 메서드 35
3.6 INamingContainer 인터페이스 36
3.7 복합 컨트롤 구현 38
3.7.1 CreateChildControls 메서드 39
3.7.2 ChildControlsCreated 속성 39
3.7.3 EnacheChildControls 메서드 39
3.7.4 RecreateChildControls 메서드 39
3.7.5 컨트롤 속성 40
3.7.6 HasControls 메서드 40
3.7.7 HasEvents 메소드 40
3.7.8 FindControl 메서드 41
3.7.9 복합제어 구현 예 41
3.8 공통 개발 기술 51
3.8.1 DesignMode 속성 51
3.8.2 기본 클래스 컨트롤의 마스킹 속성 52
3.8.3 Page.Request.Browser 속성 53
3.8.4 컨트롤 ID 사양 설정 53
3.8.5 FindControl 기능 강화 54
3.8.6 클라이언트 55에 서버 제어 값 매핑
3.8.7 CompositeControl에서 파생된 컨트롤이 자식 컨트롤을 만드는 것을 금지합니다.
3.8.8 CreateChildControls 사용 시 참고 사항 56
3.8.9 디자인 메타 속성 DefaultValue 57을 오해하지 마세요
3.8.10 Render 메서드에서 기본 클래스 리소스 활용하기 57
3.8.11 조건부 컴파일 및 조건부 속성 60
3.9 이 장의 요약 61
4장 서버 제어 속성 62
4.1 컨트롤 속성의 역할 62
4.1.1 시스템 속성 62
4.1.2 사용자 정의 속성 62
4.2 단순 속성 63
4.3 속성의 디자인 타임 특성 64
4.4 복합 속성 67
4.4.1 개요 67
4.4.2 복합 속성의 여러 마크업 형태 67
4.4.3 심층 연구 - 복합 속성 분석기 79
4.5 심층 연구 - 나만의 속성 편집기 사용자 정의 85
4.5.1 시스템 속성 편집기 85
4.5.2 사용자 정의 속성 편집기 91
4.6 유형 변환기 126
4.6.1 시스템 유형 변환기 126
4.6.2 자신만의 유형 변환기 사용자 정의 128
4.7 사용자 정의 속성 구현 138
4.8 이 장의 요약 145
5장 이벤트 및 데이터 포스트백 메커니즘 146
5.1 제어 이벤트 및 데이터 포스트백 개요 146
5.1.1 이벤트와 그 의미 146
5.1.2 데이터 포스트백 메커니즘 147
5.2 이벤트 및 데이터 포스트백 메커니즘 구현 148
5.2.1 클라이언트 반환 이벤트 인터페이스
IPostBackEventHandler 148
5.2.2 클라이언트 포스트백/콜백 공개 150
5.2.3 반환 데이터 처리 인터페이스
IPostBackDataHandler 153
5.2.4 기본 클래스에서 상속된 컨트롤의 이벤트를 올바르게 처리 159
5.2.5 KingTextBox 컨트롤 기능 확장(King
TextBoxCanPostEvent 컨트롤) 161
5.3 복합 컨트롤의 이벤트 처리 메커니즘 168
5.3.1 고효율 이벤트 수집 객체 168
5.3.2 자신만의 대리자 및 이벤트 매개변수 클래스 사용자 정의 170
5.3.3 복합 컨트롤의 이벤트 처리 175
5.3.4 자동완성 기능 제어
검색제어지능형 185
5.4 이 장의 요약 193
6장 페이지 상태 메커니즘 194
6.1 페이지 상태 개요 194
6.2 상태 보기 메커니즘 195
6.2.1 IStateManager 인터페이스 195
6.2.2 컨트롤 수명주기의 뷰 로드 및 저장 단계 196
6.2.3 단순형 뷰 상태 적용 197
6.2.4 사용자 정의 유형 뷰 상태 구현 205
6.3 제어 상태 메커니즘 217
6.4 뷰 상태와 컨트롤 상태의 관계 221
6.4.1 보기 상태가 비활성화된 경우에도 보기 상태 사용
ViewState 개체 221
6.4.2 IStateManager 인터페이스는 제어 상태에서도 계속 사용할 수 있습니다.
6.4.3 뷰 상태와 컨트롤 상태의 결합 사용 규칙 225
6.5 암호화된 페이지 상태 225
6.6 페이지 상태 지우기 226
6.7 동적으로 추가된 컨트롤의 상태 분석 보기 228
6.8 효율적인 직렬화를 달성하기 위한 사용자 정의 유형 변환기 231
6.9 페이지 상태 성능 최적화 전략 238
6.9.1 저장 위치 최적화 - 뷰 상태 정보를 클라이언트가 아닌 서버에 저장 238
6.9.2 볼륨 최적화 - 뷰 상태 데이터 압축 240
6.9.3 뷰 상태 데이터의 청크 저장 243
6.10 뷰 상태와 컨트롤 상태 요약 243
6.11 이 장의 요약 244
7장 사용자 정의 컨트롤 테마 스타일 사용자 정의 245
7.1 컨트롤 스타일 개요 245
7.2 스타일에 대한 ASP.NET 지원 245
7.2.1 스타일 클래스의 작동 원리 및 사용 245
7.2.2 WebControl 기본 클래스의 스타일 지원 기능 및 작동 원리 249
7.2.3 HTMLTextWriter 클래스는 컨트롤 스타일을 지원합니다 252
7.2.4 컨트롤 내부의 스타일 속성 규칙 정의 253
7.2.5 두 가지 일반적인 변환 방법 256
7.3 적용 사례 260
7.3.1 복합 컨트롤 스타일과 뷰 상태 260
7.3.2 제어 구조 및 스타일 분리 계획 268
7.4 이 장의 요약 295
8장 제어 클라이언트 프로그래밍 모델 297
8.1 ASP.NET 서버측 컨트롤은 클라이언트 297을 지원합니다.
8.2 ClientScriptManager 클래스 함수에 대한 자세한 설명 301
8.2.1 RegisterArrayDeclaration 메서드 301
8.2.2 RegisterClientScriptBlock 메서드 302
8.2.3 RegisterClientScriptInclude 메서드 303
8.2.4 RegisterClientScriptResource 메서드 304
8.2.5 RegisterStartupScript 메서드 305
8.2.6 RegisterExpandoAttribute 메서드 305
8.2.7 RegisterHiddenField 메서드 306
8.2.8 GetCallbackEventReference 메서드 307
8.2.9 GetPostBackClientHyperlink 메서드 307
8.2.10 GetPostBackEventReference 메서드 308
8.2.11 GetWebResourceUrl 메소드 308
8.2.12 RegisterOnSubmitStatement 메서드 309
8.3 클라이언트 콜백 309
8.4 클라이언트 제어 응용 예 323
8.4.1 JS 클라이언트 객체 캡슐화 323
8.4.2 HTC 클라이언트 객체 캡슐화 343
8.4.3 온라인 서명 제어 샘플 애플리케이션 371
8.5 일반적으로 사용되는 일부 JavaScript 프레임워크 385
8.6 이 장의 요약 387
9장 사용자 컨트롤 사용자 정의 388
9.1 사용자 컨트롤 개요 388
9.1.1 사용자 컨트롤의 역할 388
9.1.2 System.Web.UI.UserControl 이해
기본 클래스 388
9.2 사용자 컨트롤 적용 예시 389
9.2.1 간단한 사용자 컨트롤 389
9.2.2 복잡한 데이터 바인딩 사용자 컨트롤 394
9.3 사용자 제어 캐싱 419
9.3.1 ASP.NET 캐싱 소개 419
9.3.2 사용자 제어 캐싱 420
9.4 이 장의 요약 421
10장 검증 제어 개발 422
10.1 검증 통제의 작동 방식 422
10.1.1 내장된 검증 컨트롤에 대한 간략한 설명 422
10.1.2 검증통제의 작동 메커니즘 분석 423
10.2 사용자 정의 유효성 검사 컨트롤 구현 443
10.3 이 장의 요약 451
11장 컨트롤에 포함된 리소스 사용 452
11.1 컨트롤에 리소스를 내장하는 원칙 452
11.2 컨트롤에 포함된 리소스 적용하기 453
11.2.1 컨트롤에 포함된 리소스 사용하기 453
11.2.2 공통 내장 리소스 유형 및 사용법 455
11.3 일반적인 브라우저 도구 460
11.3.1 HTTPWatch 460
11.3.2 IE 개발자 툴바 461
11.3.3 피들러 461
11.4 이 장의 요약 462
12장 템플릿 데이터 바인딩 컨트롤 개발 463
12.1 ASP.NET 템플릿 특성 제어 메커니즘 463
12.1.1 템플릿 속성 소개 463
12.1.2 템플릿 컨트롤에 대한 ASP.NET 지원 464
12.1.3 리피터 제어 템플릿 구현 메커니즘 분석 466
12.2 사용자 정의 컨트롤 적용 예 469
12.2.1 템플릿 제어 기능 469
12.2.2 적용 사례 470
12.3 이 장의 요약 489
13장 데이터 바인딩 및 데이터 소스 제어 490
13.1 데이터 바인딩된 컨트롤 490
13.1.1 데이터 바인딩된 컨트롤 개요 490
13.1.2 ASP.NET의 데이터 바인딩 컨트롤 지원 491
13.2 데이터 바인딩 제어 샘플 애플리케이션 501
13.2.1 제어 구현 기능 501
13.2.2 적용 사례 502
13.3 데이터 소스 제어 508
13.3.1 데이터 소스 컨트롤 개요 508
13.3.2 데이터 소스 컨트롤에 대한 ASP.NET 지원 508
13.4 데이터 소스 제어 샘플 애플리케이션 515
13.4.1 제어 구현 기능 515
13.4.2 적용 예 516
13.5 이 장의 요약 522
14장 확장 제어 솔루션——GridView 523
14.1 확장 컨트롤 개요 523
14.2 GridView 다중 헤더 사용자 정의 523
14.2.1 기능 개요 523
14.2.2 코드 구현 524
14.3 GridView 헤더 수정 및 스크롤 막대 지원 추가 527
14.3.1 기능 개요 527
14.3.2 코드 구현 528
14.4 이 장의 요약 533
Chapter 15 사용자 정의 컨트롤 디자인 모드 프로그래밍 요약 534
15.1 .NET Framework는 디자인 타임을 지원합니다 534
15.2 디자인 타임 메타데이터 지원 535
15.3 복합 속성 직렬화 539
15.4 유형 변환기 539
15.5 속성 편집기 540
15.6 디자인 패턴에서 사용할 수 있는 기본 클래스 소개 541
15.7 컨트롤 렌더링을 위한 디자인 타임 지원 543
15.7.1 개요 543
15.7.2 적용 예 543
15.8 자동포맷 546
15.8.1 개요 546
15.8.2 적용 예 547
15.9 템플릿 UI 디자이너 551
15.10 지능운전 목록 552
15.10.1 개요 552
15.10.2 적용 예 552
15.11 컨트롤 디자이너 영역 558
15.11.1 개요 558
15.11.2 적용 예 558
15.12 이 장의 요약 562
16장 ASP.NET Ajax 컨트롤 개발——
클라이언트 563
16.1 ASP.NET Ajax 프레임워크 563 개요
16.2 Ajax 라이브러리는 클라이언트측 객체지향 기능을 지원한다 564
16.2.1 네임스페이스와 유형 및 함수 클래스 565
16.2.2 인터페이스 유형 568
16.2.3 클래스 유형과 객체 지향 상속 기능
16.2.4 열거형 유형 570
16.2.4 반사 기능 570
16.3 Ajax 라이브러리의 일반적인 유형 571
16.3.1 JavaScript 기본 유형에 대한 Ajax 라이브러리 확장 571
16.3.2 Sys.StringBuilder 클래스 576
16.4 Ajax 라이브러리는 서버를 요청하고
웹서비스 577
16.4.1 Sys.NET 네임스페이스의 클래스 577
16.4.2 요청 프로세스 분석 578
16.4.3 WebRequest 요청 예시 579
16.4.4 프록시를 사용하여 Ajax 호출 서버 구현 예제 581
16.5 Ajax 라이브러리는 제어 클라이언트 클래스 개발을 지원합니다 584
16.5.1 클라이언트 제어 기본 멤버(클래스/인터페이스) 584
16.5.2 ASP.NET Ajax 제어 클라이언트 수명주기 589
16.6 클라이언트 제어 샘플 애플리케이션 592
16.7 디버깅과 추적603
16.8 이 장의 요약 605
17장 ASP.NET Ajax 컨트롤 개발——
서버 606
17.1 ASP.NET Ajax 서버 컨트롤 개요 606
17.2 Ajax 서버 제어 607
17.2.1 Ajax 서버 제어 607
17.2.2 ASP.NET Ajax 확장 제어 612
17.3 서버 제어 지원을 위한 ASP.NET Ajax 기본 클래스 612
17.3.1 Ajax 컨트롤이 지원하는 기본 클래스 612
17.3.2 Ajax 제어 적용 예제 623
17.4 이 장의 요약 636
부록 A .NET 3.5 기술 튜토리얼 시리즈——
컬렉션/ASP.NET Ajax/SilverLight/JQuery 646
확장하다