使用Caliburn Micro传递对象

时间:2014-03-25 15:32:10

标签: c# xaml mvvm winrt-xaml caliburn.micro

我正在为Windows 8.1开发一个小应用程序。 它只是一个简单的CRUD应用程序。

我正在使用Caliburn.Micro(2.0.0-alpha2)

我有2个UserControl和2个视图(带亲戚ModelViews)

每个视图都包含一个UserControl,但想法是可以使用一个或多个userControl组合页面。

我有一个listItem userControl和一个listItemPage 还有一个formItem UserContro和一个CRUDItemPage

在我的listItem UserControl中我管理列表(取自本地数据库)以及选择。

我想在ListItemPage中选择一个项目并初始化CrudItemPage的值。

但我想知道我可以将从列表中选择的对象传递给CrudItemPage ...

我在listItemUserControViewModel中使用了这个

private Transporter _selectedItem;
    public Transporter SelectedItem
    {
        get 
        {

            return _selectedItem;
        }

        set
        {
            _selectedItem = value;
            NotifyOfPropertyChange(() => this.SelectedItem);
            //ShowMyMessage(_selectedItem);
            navigationService.NavigateToViewModel<TransporterCrudPageViewModel>(_selectedItem);
        }
    }

尝试将对象传递给CRUDPageViewModel并使用

获取它
public Transporter Parameter { get; set; }

但参数始终为空。

我的CrudView是一个包含我的FormItem(userControl)的页面,我想用CrudPageViewModel传递的值初始化它。

有可能吗? 我可以在没有userControls的情况下做到这一点......我不知道为什么它现在不起作用

0 个答案:

没有答案