[Maui] 질문 리스트
BindingContext = ViewModel
을 매개변수 없이 설정하는 방법- 매개변수가 있는
View
를 Xaml에서 사용하는 방법
ViewModel에 매개변수가 있어서 발생하는 문제입니다.
BindingContext
를 IoC
로 설정해서 필요합니다…
BindingContext = ViewModel
을 매개변수 없이 설정하는 방법View
를 Xaml에서 사용하는 방법ViewModel에 매개변수가 있어서 발생하는 문제입니다.
BindingContext
를 IoC
로 설정해서 필요합니다…
뷰에 매개변수를 제거하시고
뷰의 비하인드코드에 있는 생성자에
BindingContext= MauiApplication.Current.Services.GetService<뷰모델명>();
이렇게 사용하실 수있습니다.
MAUI는 기본적으로 XAML 2009 네임페이스를 x
접두어로 설정하고 있기때문에 XAML을 통한 객체 생성 시 2009에서 지원하는 x:Arguments
속성을 통해 아래와 같이 생성자 파라메터를 지정할 수 있습니다.
<ContentPage.Content>
<View:ViewWithParameter x:Name="_notifyPermissionView" BindingContext="{Binding NotifyPermissionsViewModel}">
<x:Arguments>
<View:ViewModel />
</x:Arguments>
</View:ViewWithParameter>
</ContentPage.Content>
단, Designer에서 에러로 표시되기는 하지만 정상적으로 동작합니다.