Я не могу отобразить всплывающее окно инструментария сообщества maui в модели представления.C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Я не могу отобразить всплывающее окно инструментария сообщества maui в модели представления.

Сообщение Anonymous »

Я хочу, чтобы всплывающее окно с определенным сообщением отображалось. Итак, я решил создать всплывающее окно, которое можно будет отображать из модели представления. На данный момент я создал всплывающее окно под названием MsgBox, и вот что у меня есть:
Код XAML Код MsgBox

Код: Выделить всё

using CommunityToolkit.Maui.Views;
using LockAndKeyMaui.ViewModels;

namespace LockAndKeyMaui;

public partial class MsgBox : Popup
{
public MsgBox(MsgViewModel msgVwMod)
{
InitializeComponent();
BindingContext = msgVwMod;
}
}
Модель представления MsgBox

Код: Выделить всё

using CommunityToolkit.Maui.Core;
using CommunityToolkit.Mvvm.ComponentModel;
using System.ComponentModel;

namespace LockAndKeyMaui.ViewModels
{
public class MsgViewModel : ObservableObject, INotifyPropertyChanged
{
private string msgtxt, hdrtxt;

readonly IPopupService popupService;

public MsgViewModel(IPopupService popupService)
{
this.popupService = popupService;
}

public string MsgTxt
{
get => msgtxt;
set
{
this.msgtxt = value;
OnPropChg(nameof(MsgTxt));
}
}

public string HdrTxt
{
get => hdrtxt;
set
{
hdrtxt = value;
OnPropChg(nameof(HdrTxt));
}
}

public event PropertyChangedEventHandler? PropertyChanged;

private void OnPropChg(string prName)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(prName));
}
}
}
И в отдельной модели представления я пытаюсь отобразить ее, настроив модель представления следующим образом:

Код: Выделить всё

namespace LockAndKeyMaui.ViewModels
{
public partial class MainViewModel : INotifyPropertyChanged
{
public IPopupService popupService;

public MainViewModel(IPopupService popServ)
{
Laks = new LakFuncs();
popupService = popServ;
}

[RelayCommand]
public static async Task CopyUsr(object sender)
{
var dataView = sender as SfDataGrid;

PswdWthGrp row = (PswdWthGrp)dataView!.SelectedRow;

if (row != null)
{
await Clipboard.SetTextAsync(row.UsrName);
popupService.ShowPopupAsync(onPresenting: vwMod => vwMod.PerformUpdts("User Name copied.", ""));
await Task.Delay(1500);
popupService.ClosePopup();
return;
}
}
}
}
Но именно здесь у меня возникла проблема. Во втором режиме просмотра, когда я пытаюсь отобразить всплывающее окно MsgBox, popupService.ShowPopupAsync даже не распознается. Я даже попробовал команду без Async, но она все равно не распознается.
Мне также хотелось бы иметь возможность передавать в это всплывающее окно несколько переменных.
Итак, как мне заставить все это работать?

Подробнее здесь: https://stackoverflow.com/questions/793 ... view-model
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Обновление MVVM инструментария сообщества .net maui из другой ветки
    Anonymous » » в форуме C#
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Реализация навигации в Авалонии с помощью инструментария сообщества MVVM
    Anonymous » » в форуме C#
    0 Ответы
    76 Просмотры
    Последнее сообщение Anonymous
  • Реализация навигации в Авалонии с помощью инструментария сообщества MVVM
    Anonymous » » в форуме C#
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • Реализация навигации в Авалонии с помощью инструментария сообщества MVVM
    Anonymous » » в форуме C#
    0 Ответы
    36 Просмотры
    Последнее сообщение Anonymous
  • Я не могу отобразить всплывающее окно с моим набором инструментов сообщества.
    Anonymous » » в форуме C#
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous

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