내가 좋아하는 명확한 항목에서 텍스트 내 뷰 모델는 바인딩다. 아래 코드에서는 내가 그것을 시도를 사용하여 RelayCommand 지만,그것은 작동하지 않습니다.
내가 무엇을 달성하고 싶은 경우:버튼을 클릭하면 이름 AddQuestionToQuiz
함수가 실행 명령을 사용하여 버튼입니다. 기능 OnCreateQuizClick()
에 위치한 시점이 triggerd 고 이 기능을 요구하는 명확한 내 항목 텍스트는지에 대한 순간입니다.
도를 사용하여 정기적 명령을 사용하는 대신 RelayCommand 이지만,또한 여기에서 그것을 원하지 않는다.
편집:아래 코드의 잘 작동합니다-트워크 코드를 사용하는 명확한 항목에 텍스트를 클릭할 때 버튼을에서 뷰 모델을 구현하 INotifyPropertyChanged 인터페이스
.xaml-코드
<Button x:Name="AddQuestionToQuiz" WidthRequest="200" Command="{Binding CreateQuizCommand}" Style="{StaticResource ButtonStyle}" Text="Add question to quiz"></Button>
뷰 모델드
internal class CreateQuizPageViewModel : INotifyPropertyChanged
{
// Quiz Name Input
public String QuizNameInput { get; set; }
private String quizQuestionInput = "";
public String QuizQuestionInput
{
get { return quizQuestionInput; }
set { quizQuestionInput = value; OnPropertyChanged(); }
}
public RelayCommand CreateQuizCommand { get; set; }
public CreateQuizPageViewModel()
{
CreateQuizCommand = new RelayCommand(OnCreateQuizClick);
}
public event PropertyChangedEventHandler PropertyChanged;
public void OnPropertyChanged(string propertyName = null)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
}
public void OnCreateQuizClick()
{
QuizQuestionInput = "";
}
}