【问题标题】:Xamarin Forms, Prism and toolbar items?Xamarin 表单、棱镜和工具栏项目?
【发布时间】:2018-09-13 07:42:48
【问题描述】:

您好,我正在使用最新版本开发一个非常简单的 xamarin 应用程序 棱镜和dryioc。我正在根据客户的规范构建应用程序 谁真的想使用工具栏项。

但是我从来没有将它们与 mvvm 模式一起使用,而且我很难找到一种优雅的方式来将所有内容绑定在一起,而无需“黑客”和快速修复。

我从某处听说 ToolbarItems 页面属性是可绑定的,但我尝试了多次都没有成功。

有没有办法从视图模型绑定 ToolbarItems? 提前致谢。

【问题讨论】:

  • 也许您应该在 SO 阅读有关要问的内容。我们不建议。我们回答具体问题

标签: c# xaml xamarin xamarin.forms prism


【解决方案1】:

我之前没用过这个“dryioc”,但是很容易绑定工具栏项。

首先,根据你所在的页面类型添加XAML:

 <ContentPage.ToolbarItems>
    <ToolbarItem Name="Cart" Command="{Binding GoToCartCommand}" Icon="Icons/cart.png">
    </ToolbarItem>
</ContentPage.ToolbarItems>

之后,在视图模型中,添加如下两条命令:

Command _goToCartCommand;

    public Command GoToCartCommand
    {
        get { return _goToCartCommand; }
        protected set { _goToCartCommand = value; }
    }

请注意,我们在 XAML 中使用了带有大写字母的命令 之后在视图模型的构造函数中初始化命令,注意你只添加了函数的名称。 (您可以通过简单的修改添加参数,但通常不需要):

_goToCartCommand = new Command(GoToCartClicked);

最后,添加你的函数:

 async void GoToCartClicked()
    {
        await _pageDialogService.DisplayAlertAsync("Confirmation", "You are going to the cart page.", "OK");

    }

【讨论】:

  • @scottyaim 如果对您有用,请将其标记为已回答。
猜你喜欢
  • 2023-03-12
  • 1970-01-01
  • 1970-01-01
  • 2022-06-16
  • 2018-04-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-05-04
相关资源
最近更新 更多