Проблема: когда я добавил конструктор DI из IMvxMessanger к ViewModel я получил сообщение об ошибке: "Не удалось загрузить страницу"; Если я удалю этот DI, мой инструмент отлично работает. Btw, IHelloService не даст этой ошибки, он отлично работает только с IMvxMessanger.MvvmCross, UWP, MessengerPlugin: Не удалось загрузить страницу
Я после этого руководства: https://mvvmcross.com/docs/a-windows-universal-app-platform-project
MvvmCross Версия: 4.4.0
примеры кода:
FirstViewModel
public class FirstViewModel : MvxViewModel
{
private readonly IHelloService _helloService;
private readonly IMvxMessenger _messenger;
public FirstViewModel(IHelloService helloService, IMvxMessenger messenger)
{
_helloService = helloService;
_messenger = messenger;
}
private string _hello = "Hello MvvmCross";
public string Hello
{
get { return _hello; }
set { SetProperty(ref _hello, value); }
}
}
FirstView.xaml.cs
public sealed partial class FirstView : MvxWindowsPage
{
public FirstView()
{
InitializeComponent();
}
}
FirstView.xaml
<views:MvxWindowsPage
x:Class="MvvmCrossDocs.UWP.Views.FirstView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:MvvmCrossDocs.UWP.Views"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:views="using:MvvmCross.WindowsUWP.Views"
mc:Ignorable="d">
<Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
<StackPanel>
<TextBox Text="{Binding Hello, Mode=TwoWay}" />
<TextBlock Text="{Binding Hello}" />
</StackPanel>
</Grid>
Настройка
public class Setup : MvxWindowsSetup
{
public Setup(Frame rootFrame) : base(rootFrame)
{
}
protected override IMvxApplication CreateApp()
{
return new Core.App();
}
}
Также эти строки в App.xaml.cs
if (rootFrame.Content == null)
{
var setup = new Setup(rootFrame);
setup.Initialize();
var start = Mvx.Resolve<IMvxAppStart>();
start.Start();
}
Я скопировал папку _Bootstrap_ из моего проекта Droid и разрешил пространства имен -> 0 изменений, получил ту же ошибку. –
Также я попробовал 'InitializeLastChance' в _Sturtup.cs_ файле. Также такая же ошибка :( –
Хммм, интересно. У вас есть stacktrace исключения? Возможно, вы попробовали очистить и перестроить? – Plac3Hold3r