KeiStory

.NET MAUI CommunityToolkit.Mvvm 사용하기 - 추가

 

이전 포스팅에서 Commonunity.Toolkit.Mvvm 사용법에 대해서 알아봤습니다.

2024.05.04 - [코딩/.NET MAUI] - .NET MAUI CommunityToolkit.Mvvm 사용하기

추가로 사용법에 대해서 더 알아보려고합니다.

Property 변경에 따른 처리를 하고자 할때 아래처럼 사용합니다.

[ObservableProperty]
private string name;

partial void OnNameChanging(string value)
{
    InputText = "CHANGING";
    Debug.WriteLine($"Name is about to change to {value}");
}

partial void OnNameChanged(string value)
{
    InputText = "CHANGED : " + Name;
    Debug.WriteLine($"Name has changed to {value}");
}

위 코드를 보면 알수 있듯이 name 이라는 Property 기준으로 On...Changeing, On...Changed 를 선언하게되면

Property 변경 시 해당 메서드를 호출하게 됩니다.


이래는 인자가 있는 Command 만들고 사용하는 방법입니다.

아래처엄 ReplyCommand 정의 시 인자를 주면 됩니다. (간단)

[RelayCommand]
private void ChangeText(string text)
{
    InputText = text;
}
<Entry
    Text="{Binding Name}"
    x:Name="nameEntry"
    SemanticProperties.HeadingLevel="Level2"
    FontSize="18"
    HorizontalOptions="Center" />

<Button 
    Text="Reset"
    SemanticProperties.Hint="Reset Text"
    Command="{Binding ChangeTextCommand}"
    CommandParameter="{Binding Source={x:Reference nameEntry}, Path=Text}"
    HorizontalOptions="Center" />

 

 

반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band