c# - SlideOverKit:“SlideMenuView”类型的值不能添加到“IList”类型的集合或字典中
问题描述
我在 NuGet Gallery中提供的SlideOverKit库的帮助下实现了BottomSheet 。我已经在GitHub 上提到了他们的示例。我的实施细节如下Xamarin.forms
实施细节:
<TabbedPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:SmartApp.CustomControls"
xmlns:y="clr-namespace:SlideOverKit;assembly=SlideOverKit"
Title="Opportunities"
x:Class="SmartApp.OpportunitiesPage">
<TabbedPage.ToolbarItems>
<!--Menu Item here-->
</TabbedPage.ToolbarItems>
<ContentPage Title="Tab 1" >
<!--Tab 1 details here-->
</ContentPage>
<y:SlideMenuView >
<!--Tab 2 details here-->
</y:SlideMenuView>
</TabbedPage>
在上面的实现中,我面临编译时错误,即“无法将'SlideMenuView'类型的值添加到'IList'类型的集合或字典中”,y:SlideMenuView
也不支持Title
属性,这是另一个问题。我该如何解决这个问题?请帮忙。
解决方案
SlideMenuView
必须放在 a而MenuContainerPage
不是 a内ContentPage
。
在 c# 中查看他们的示例。在 XAML 中也可以这样做:
只需将您的替换ContentPage
为 ay:MenuContainerPage
或创建一个继承自该页面MenuContainerPage
并将其用作父页面的自定义页面。
这些信息也可以在他们的网站上找到:
继承
包含 SlideMenuView 的页面必须继承自 MenuContainerPage 或 IMenuContainerPage。您的页面可以从 MenuContainerPage 继承,因此您只需设置 SlideMenuView 属性,它就会开始工作。如果您的页面需要从您的解决方案中的其他基本页面继承,您必须实现 IMenuContainerPage 接口,并且您需要为每个平台创建渲染器页面。这不会太难,只需从示例中复制代码,您可以按照示例代码中的 SlideDownMenuPage 页面执行此操作。
推荐阅读
- c++ - 套接字 - 使用 select 超时
- mysql - 使用 MySQL 作为数据源时 Google Data Studio 中的错误
- operating-system - 从列表 FreeRTOS 定期调度任务
- oracle - 如何在 Oracle SQL 开发人员中查看/执行授予的存储过程
- scala - 访问 Mock 类的受保护变量
- cncontact - 无法将自定义对象数组保存到 Swift 4 中的 UserDefault
- python - Python字符串拆分,处理单引号
- php - 带有浮点数和整数字符串的非法字符串偏移
- three.js - 在立方体中单击以绘制线条时保留一个点
- python - 将订单与列中的项目合并