모든 다음의 는 WPF를 말합니다 :
예를 들어, 참조, AngularJS와에, 텍스트 입력에 너무 복잡를 초점을 설정합니다.
한 줄의 UI 코드에만 많은 코드 (예 :보기 클래스를 확장)를 작성해야합니다.
WPF와 관련하여 이것은 드문 경우이지만 예를들 수 있습니까?
하나의 UI 요소를 한 상태에서 다른 상태로 변경할 때 많은 전환 애니메이션이 있습니다. 버전의 .NET 3.5 이후
WPF에서
는 VisualStateManager
출연 :
VisualStateManager가 특정 상태에있을 때, 컨트롤에 대한 컨트롤의 모양을 상태를 지정할 수 있습니다을 때 컨트롤을 상태를 바꿉니다.
그의 목표는 응용 프로그램 상태를 정의하고 각 상태가 애니메이션과 같은 작업을 수행하는 것입니다. 이 상황에서 바인딩은 그대로 사용되지 않습니다.
데이터 바인딩 프레임 워크를 사용할 때 쉽지 않은 것처럼 보입니다.
나는 그것이 단점이라고 생각하지 않습니다. 귀하가 언급 한대로 데이터 바인딩이 필요합니다 : separate UI and Data completely
. 실제로 전체 MVVM 패턴은 데이터 바인딩과 같은 강력한 기술을 기반으로합니다. 이 기능을 사용하면 ViewModel을 통해 모델과 뷰 간 추상 연결을 만들 수 있습니다. 그리고 핵심 단어는 Data
입니다. 데이터가있는 모든 곳에서는 Data Binding
을 사용하는 것이 더 좋습니다.
Binding
은 Validation
, Converters
등과 같이 많은 흥미로운 것을 할 수 있습니다. 일반적으로 Binding 속성 등에 사용됩니다. VisualStateManager, Triggers, DataTriggers 등과 같은 다른 기능을 사용하여 UI 작업을 수행하고 대상에 사용할 때 어렵지 않습니다. 익숙해 져야합니다.
유일한 단점은 - Binding
은 다른 용도 (예 : 변환기없이 사용할 수없는 경우)에서 사용할 수 있다는 것입니다. 그리고 예, 처음에는 이상하게 보일 수도 있지만, 이것이 단점이라고 생각하지 않습니다. 다른 기술에 대해서도 마찬가지라고 생각합니다.
단점이라 할지라도 성능에 대해 말할 수 있습니다. 값을 직접 할당하거나 Binding
을 통해 할당하는 경우 값을 직접 할당하는 것이 더 빠릅니다. 하지만 Bindings의 장점은 많은 관심을 기울이지 않는다고 생각합니다.
'무엇이 더 복잡합니까?' 당신은 하나의 기술에 귀하의 질문에 집중해야합니다. WPF는 선언적 마크 업을 제외하고는 웹 기술과 아무 관련이 없습니다. –
특정 요구 사항없이 특정 기술이나 프레임 워크를 평가하는 것은 의미가 없습니다. – voddy