Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon mvvmcross.plugin.filedbinding 플러그인의 주요 기능은 무엇입니까?


mvvmcross.plugin.filedbinding 플러그인의 주요 기능은 무엇입니까?


MVVMCROSS.PLUGIN.FIELDBINDING PLUGIN은 MVVMCross의 RIO 바인딩 확장의 일부이며, 필드를 속성과 함께 데이터 소스로 사용할 수 있도록 데이터 바인딩 기능을 향상 시키도록 설계되었습니다. 이 플러그인의 주요 기능은 다음과 같습니다.

1. 필드 기반 데이터 바인딩 : 전통적으로 MVMCROSS 데이터 바인딩은 속성에 의존합니다. 그러나 FieldBinding 플러그인을 사용하면 ViewModel의 공공 필드를 데이터 바인딩 소스로 사용할 수 있습니다. 이 유연성은 속성이 필요하지 않고 필드에 직접 바인딩하려는 경우 특히 유용합니다 [1] [4].

2. inotifyChanged 필드에 대한 지원 : 플러그인은 동적 필드에 'inotifyChanged`의 사용을 지원합니다. 이는 필드가 'inotifyPropertyChanged'의 속성과 비슷한 것과 유사한 필드가 UI에 변경 사항에 대해 알릴 수 있음을 의미합니다. 이것은`inc` (notify 변경)과 같은 클래스를 사용하여 달성되며, 이는 관찰 가능한 필드를 생성하는 데 사용할 수 있습니다 [1].

3. 호환성 및 플랫폼 지원 : FieldBinding 플러그인은 순수한 .NET 표준 플러그인으로 Xamarin iOS, Xamarin Android, Xamarin Forms, Windows 및 Mac을 포함한 MVMCross가 지원하는 다양한 플랫폼에서 호환됩니다 [1] [7].

4. 다른 플러그인과의 통합 : Fieldbinding 플러그인은 MVVMCross.plugin.all 패키지와 같은 다른 MVMCROSS 플러그인과 MVVMCROSS 플러그인 및 MVVMCROSS.PLUGINS.VALIDATION.FORFIELDBINDING을 포함하여 필드 바인딩에 대한 검증 지원을 제공 할 수 있습니다.

5. ViewModels의 사용 : ViewModels에서`inc '와 같은 클래스를 사용하여 필드를 정의하고 UI 요소에 직접 바인딩 할 수 있습니다. 예를 들어,`public readonly inc id = new NC ();`와 같은 필드를 생성하고 MVVMCross 바인딩 구문 [1]을 사용하여 UI 구성 요소에 바인딩 할 수 있습니다.

6. 바인딩 구문 : 플러그인은 Android 용 XML 기반 바인딩 및 iOS와 같은 플랫폼에 대한 유창한 바인딩을 포함한 다양한 바인딩 구문을 지원합니다. 예를 들어,``local : mvxbind = 'text firstName'` [1] [4]와 같은 XML을 사용하여 Android에서'textView '를 바인딩 할 수 있습니다.

전반적으로 MVVMCross.plugin.fieldBinding 플러그인은 필드를 사용하여 특정 시나리오를 단순화하고 코드 가독성을 향상시켜 데이터 바인딩에보다 유연한 접근 방식을 제공합니다.

인용 :
[1] https://www.mvvmcross.com/documentation/plugins/fieldbinding
[2] https://www.mvvmcross.com/documentation/advanced/customizing-using-app-and-setup
[3] https://www.mvvmcross.com/mvvmcross-5-release/
[4] https://www.mvvmcross.com/documentation/fundamentals/data-binding
[5] https://www.mvvmcross.com/documentation/fundamentals/viewmodel-lifecycle
[6] https://github.com/mvvmcross/mvvmcross/issues/2607
[7] https://www.nuget.org/packages/mvvmcross.plugin.fieldbinding/
[8] https://www.mvvmcross.com/documentation/fundamentals/logging-new