Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin 如何使用MVVMCross for Windows Phone Universal Platform连接视图和视图模型?_Xamarin_Windows Phone 8.1_Mvvmcross - Fatal编程技术网

Xamarin 如何使用MVVMCross for Windows Phone Universal Platform连接视图和视图模型?

Xamarin 如何使用MVVMCross for Windows Phone Universal Platform连接视图和视图模型?,xamarin,windows-phone-8.1,mvvmcross,Xamarin,Windows Phone 8.1,Mvvmcross,我有一个pcl dll(Xamarin),所有的视图模型、模型、服务、接口、转换器都在这个项目中 我已经在Android和IOS上使用这个核心,现在将启动Windows Phone应用程序 我现在的主要问题是,如何使viewmodel成为视图的datacontext。对于示例:LoginView模型.cs(core)和LoginView.xaml 我使用的是MVVMCross,Windows Phone项目是8.1 比你提前 更新: 我试过这个: <views:MvxWindowsPage

我有一个pcl dll(Xamarin),所有的视图模型、模型、服务、接口、转换器都在这个项目中

我已经在Android和IOS上使用这个核心,现在将启动Windows Phone应用程序

我现在的主要问题是,如何使viewmodel成为视图的datacontext。对于示例:LoginView模型.cs(core)和LoginView.xaml

我使用的是MVVMCross,Windows Phone项目是8.1

比你提前

更新:

我试过这个:

<views:MvxWindowsPage
    x:Class="Tocalivros.WindowsPhone.Views.LoginView"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:Tocalivros.WindowsPhone.Views"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:views="using:Cirrious.MvvmCross.WindowsCommon.Views"
    mc:Ignorable="d"
    Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">


public sealed partial class LoginView : MvxWindowsPage<LoginViewModel>
    {
        public LoginView()
        {
            this.InitializeComponent();
        }
但是这样viewmodel就不会使用所需的参数启动。。。(恶习)

这让我觉得更好的方法是第一步:

public sealed partial class LoginView : MvxWindowsPage<LoginViewModel> but I get error...
公共密封部分类LoginView:MvxWindowsPage但我得到错误。。。

您可以像MvvmCross中的其他平台一样使用

public class LoginPage : MvxWindowsPage<LoginViewModel>
{
}
公共类登录页面:MvxWindowsPage
{
}
在您的视图中,您将看到如下内容:

<views:MvxWindowsPage
    x:Class="somenamspace.Views.LoginPage">
<!-- Put your layout here -->
</views:MvxWindowsPage>


datacontext现在已经为该视图完成。

Hi Martijn,但是一旦我将view.cs部分类更改为:public sealed partial class LoginView:MvxWindowsPage,我就会收到以下错误:“LoginView的部分声明不能指定不同的基类”,那么您是否也将xaml视图更改为相同的基类?它们都必须是MvxWindowsPage类型。你可以在这里看到:是的,我做了…:
<views:MvxWindowsPage
    x:Class="somenamspace.Views.LoginPage">
<!-- Put your layout here -->
</views:MvxWindowsPage>