Предупреждение о привязке .NET Maui: свойство «LoginCommand» не найдено в LoginPageViewModes.C#

Место общения программистов C#
Ответить
Anonymous
 Предупреждение о привязке .NET Maui: свойство «LoginCommand» не найдено в LoginPageViewModes.

Сообщение Anonymous »

Я следую руководству от AshProgHelp, чтобы создать простую страницу входа в мое приложение для Windows.
В части 2 минуты значения 9:15 помещаются в поля ввода имени пользователя и пароля. , а затем следует вход в систему.
Когда я пробую то же самое, с кнопкой входа ничего не происходит.
Просматривая журнал вывода, я обнаруживаю следующее предупреждение компиляции:
Microsoft.Maui.Controls.Xaml.Diagnostics.BindingDiagnostics: Предупреждение: свойство «LoginCommand» не найдено в «MyAdministrationApp.Viewmodes.LoginPageViewModes», целевое свойство: «Microsoft. Maui.Controls.Button.Command'
Ниже приведен код .cs
`using CommunityToolkit.Mvvm.ComponentModel;
using CommunityToolkit.Mvvm.Input;
using MyAdministrationApp.Models;
using MyAdministrationApp.Services;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.Json.Serialization;
using System.Threading.Tasks;
using Newtonsoft.Json;
using MyAdministrationApp.Views;

namespace MyAdministrationApp.Viewmodes
{
public partial class LoginPageViewModes : BaseViewModel
{
[ObservableProperty]
private string _userName;

[ObservableProperty]
private string _password;

readonly LoginRepository loginRepository= new LoginService();

[RelayCommand]
public async Task LoginCommand()
{
Console.WriteLine("Sign In button pressed");
if (!string.IsNullOrWhiteSpace(UserName ) && !string.IsNullOrWhiteSpace(Password))


{
UserInfo userInfo = await loginRepository.Login(UserName, Password);

if (Preferences.ContainsKey(nameof(App.UserInfo)))
{
Preferences.Remove(nameof(App.UserInfo));
}

string userDetails = JsonConvert.SerializeObject(userInfo);
Preferences.Set(nameof(App.UserInfo), userDetails);
App.UserInfo = userInfo;

await Shell.Current.GoToAsync($"//{nameof(HomePage)}");
}
}

}
}`

The LoginPage Class.

`using MyAdministrationApp.Viewmodes;

namespace MyAdministrationApp;

public partial class LoginPage : ContentPage
{
public LoginPage(LoginPageViewModes loginPageViewModes)
{
InitializeComponent();
this.BindingContext = loginPageViewModes;

}
}`
and the XAML code











I've tried adding the property manually by adding this to the loginpageviewmodes

` public ICommand LoginCommand { get; set; }
public LoginPageViewModes()
{
LoginCommand = new Command(OnLogin);
}

private void OnLogin(){
//Same code as in LoginCommand
}`

This provided me with more errors,

The code should simply check if both input fields are not 'black' and then, upon pressing the sign in button. Should navigate to the next page.

I am a beginner with .NET Maui.
Any help would be greatly appreciated!.



Подробнее здесь: https://stackoverflow.com/questions/790 ... ageviewmod
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»