当前位置: 首页 > news >正文

Xamarin Dropdown menu



1. menu item model 


public class MasterPageItem 
{
	public string Title { get; set; }


	public string IconSource { get; set; }


	public Type TargetType { get; set; }	
}




2. MasterPage 的view

<?xml version="1.0" encoding="UTF-8"?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms" 
			 xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" 
			 x:Class="PurpleHeart.MasterPage"
       Title="Menu"
			 Padding="0,40,0,0">
	<ContentPage.Content>
		<StackLayout VerticalOptions="FillAndExpand">
			<ListView x:Name="MyListView" VerticalOptions="FillAndExpand" SeparatorVisibility="None">
				<ListView.ItemTemplate>
					<DataTemplate>
						<ImageCell Text="{Binding Title}" ImageSource="{Binding IconSource}" />
					</DataTemplate>
				</ListView.ItemTemplate>
			</ListView>
		</StackLayout>
	</ContentPage.Content>
</ContentPage>


.cs

public partial class MasterPage : ContentPage
	{
		public ListView ListView { get { return MyListView; } }


		public MasterPage ()
		{
			InitializeComponent ();


		    var masterPageItems = new List<MasterPageItem>
		    {
		        new MasterPageItem
		        {
		            Title = "Shops",
		            IconSource = "shop.png",
		            TargetType = typeof (MyShops)
		        },
		        new MasterPageItem
		        {
		            Title = "Settings",
		            IconSource = "settings.png",
		            TargetType = typeof (SettingsPage)
		        },
		        new MasterPageItem
		        {
		            Title = "My Orders",
		            IconSource = "my_order.png",
		            TargetType = typeof (MyOrderPage)
		        },
                new MasterPageItem
                {
                    Title = "Logout",
                    IconSource = "home1.png",
                    TargetType = typeof (Login)
                }
            };


		    MyListView.ItemsSource = masterPageItems;
		}
	}



添加其余页面的XAML
...


3.运行结果


相关文章:

  • [IE 技巧] 显示/隐藏IE 的菜单/工具栏
  • azure 机器学习算法分类
  • AutoFac 简单好用的IOC
  • 使用Xamarin Forms+XLabs 完成 Camara access
  • 服务器部署MVC API 遇到IIS 403.14 错误
  • 利用udev、sys动态创建linux设备结点
  • 创建第一个azure hadoop insight
  • ARM linux系统调用的实现原理
  • 嵌入式linux应用开发之:初识Qt
  • 内核栈的使用
  • IIS 7 ‘Handler XXX has a bad module XXX in its module list’
  • C# 使用 doggleReport 生成pdf报表
  • 在nand flash上实现JFFS2根文件文件系统
  • window API判断系统是否为闲置状态
  • 机器学习 -- 基本数学概念总结
  • 【跃迁之路】【463天】刻意练习系列222(2018.05.14)
  • Android路由框架AnnoRouter:使用Java接口来定义路由跳转
  • Asm.js的简单介绍
  • Java超时控制的实现
  • Laravel Mix运行时关于es2015报错解决方案
  • NSTimer学习笔记
  • Vue全家桶实现一个Web App
  • 技术攻略】php设计模式(一):简介及创建型模式
  • 码农张的Bug人生 - 初来乍到
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 面试总结JavaScript篇
  • 入门级的git使用指北
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 【运维趟坑回忆录】vpc迁移 - 吃螃蟹之路
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • # Swust 12th acm 邀请赛# [ K ] 三角形判定 [题解]
  • (4)(4.6) Triducer
  • (cos^2 X)的定积分,求积分 ∫sin^2(x) dx
  • (WSI分类)WSI分类文献小综述 2024
  • (动手学习深度学习)第13章 计算机视觉---微调
  • (附源码)spring boot建达集团公司平台 毕业设计 141538
  • (四)JPA - JQPL 实现增删改查
  • .NET 5.0正式发布,有什么功能特性(翻译)
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .NET 除了用 Task 之外,如何自己写一个可以 await 的对象?
  • .Net 垃圾回收机制原理(二)
  • /run/containerd/containerd.sock connect: connection refused
  • ??javascript里的变量问题
  • @Documented注解的作用
  • @Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成
  • [ C++ ] STL---string类的使用指南
  • [ vulhub漏洞复现篇 ] ThinkPHP 5.0.23-Rce
  • [20150904]exp slow.txt
  • [23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
  • [AI]文心一言爆火的同时,ChatGPT带来了这么多的开源项目你了解吗
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)
  • [BUUCTF]-Reverse:reverse3解析
  • [Bzoj4722]由乃(线段树好题)(倍增处理模数小快速幂)
  • [C#]猫叫人醒老鼠跑 C#的委托及事件
  • [C++数据结构](22)哈希表与unordered_set,unordered_map实现