Xamarin.forms 如何绑定工具栏上的图像图标平台上的项目标记

Xamarin.forms 如何绑定工具栏上的图像图标平台上的项目标记,xamarin.forms,android-toolbar,Xamarin.forms,Android Toolbar,如何在Xamarin.Forms中绑定ToolbarItemOnPlatform标记上的图像图标 这是我的代码: <ToolbarItem Icon="{OnPlatform iOS='iconscalendarplus64.png', Android='iconscalendarplus64.png'}" Priority="0" Order="Primary" Command="{Binding PrikaziCommand}" 最简单的方法是:

如何在Xamarin.Forms中绑定
ToolbarItem
OnPlatform标记上的图像图标

这是我的代码:

<ToolbarItem 
    Icon="{OnPlatform iOS='iconscalendarplus64.png', Android='iconscalendarplus64.png'}" 
    Priority="0"
    Order="Primary" 
    Command="{Binding PrikaziCommand}"

最简单的方法是:

                <ToolbarItem.Icon>
                <OnPlatform x:TypeArguments="ImageSource">
                    <OnPlatform.iOS><FileImageSource File=""icon.png""/></OnPlatform.iOS>
                    <OnPlatform.Android><FileImageSource File=""icon.png""/></OnPlatform.Android>
                    <OnPlatform.WinPhone><FileImageSource File=""Images/icon.png""/></OnPlatform.WinPhone>
                </OnPlatform>
                </ToolbarItem.Icon>

好的是,您可以在这里基于平台使用所有4种类型的ImageSource

祝您好运,如果您有任何疑问,请随时回来,因为
OnPlatform
的和
iOS
属性不可用

它们不支持数据绑定。因此,您不能绑定这些属性

另一种方法是,可以将特定于平台的图像源设置为ViewModel中的属性,然后改为使用它

XAML


查看模型

publicmagesourceplatformspecificimage{get;set;}
公共视图模型()
{
if(Device.RuntimePlatform==Device.Android)
{
PlatformSpecificImage=“android\u image.png”;
}
其他的
{
PlatformSpecificImage=“iOS\u image.png”;
}
}

希望这能有所帮助

我尝试实现此功能,可绑定文件但不起作用。我绑定属性类型字符串不起作用,并尝试属性ImageSource仍然看不到屏幕上的图像。可能是什么?您能告诉我从哪里获取此图像吗?这是在您的本机资源中,还是作为base 64映像来自某个API?感谢您提供的关于OnPlatform不可绑定属性的帮助信息。我尝试了一下,发现这是错误的……在您的帮助下,我成功了。谢谢。