首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Xamarin 学习笔记 - Page(页面)

这里我们将不谈论任何平台,它仅仅是一个标准(当前版本2.0),你代码可以支持它所有平台上运行。2017年11月,.NET Standard进入了Xamarin.Forms项目模板。...该Page页面,我们将添加一个Layout布局,本示例我们用StackLayoutStackLayout中间,我们将添加一些view视图。...这些视图是一组控件,本示例,我们用到是:一个Label标签,一个Entry(输入文本)以及一个Button按钮。 Xamarin.Forms提供了许多可用页面,以允许提出各种不同导航体验。...是一个管理两个相关信息页面的页面 - 一个显示项目的主记录页面,以及一个显示主记录页面上单个项目详细信息详细信息页面。...我们将创建三个页面:Page1,Page2并且Page3具有不同内容和背景颜色。 现在,C#部分,我们将定义默认页面,以便在启动应用程序时显示它。

4.6K20

Xamarin.Forms入门-使用 Xamarin.Forms 来创建跨平台用户界面

本文将会介绍整个Xamarin.Forms框架核心和基础概念,包括: · 如何安装 Xamarin.Forms · Visual Studio和Xamarin Studio建立 Xamarin.Forms...Forms开始编程 开发人员可以Xamarin Studio和Visual Studio创建 Xamarin.Forms项目,有四种项目类型可以选择: Portable Library:用于代码共享类库...Xamarin.Forms每一个屏幕画面都有对应概念叫:Page,Xamarin.Forms.Page 安卓与 Activity对应, iOS 与 ViewController对应,Windows...页面导航可以理解为一个后进先出堆栈结构,展现一个页面相当于堆栈添加一个元素,如果需要回到前一个页面,就需要把当前页面从堆栈删除。...,除了显示当前页面的标题外,还有一个返回按钮。

12.9K70
您找到你想要的搜索结果了吗?
是的
没有找到

Xamarin Forms WPF 干掉默认窗口导航条

创建默认 Xamarin Forms WPF 应用,将和 UWP 应用界面不相同, WPF 项目显示顶部蓝色一条,看起来不好看,那么可以如何干掉他 下图是一个默认 Xamarin Forms...此时显示工具蓝色条就是本文说 窗口导航条, Xamarin Forms 源代码,这个导航条是 FormsWindow.xaml 文件里面,使用 PART_TopAppBar 控制,也就是想要不显示这个工具栏...此时原本显示工具蓝色一条就被干掉了 这部分文档请看 Navigation In Xamarin.Forms xamarin.forms - Remove navigation bar in contentpage... Xamarin Forms 源代码 FormsWindow.xaml 是通过绑定设置是否显示 <controls:FormsAppBar x:Name="PART_TopAppBar" Visibility... Xamarin Forms WPF 版本里面, WPF 实现了大量基础控件,和 Xamarin Forms 对应,此时做实际交互和渲染都是原生 WPF 控件,这样能提升性能

1.3K10

Xamarin.Forms 选取文件 让用户选择本地文件

Xamarin ,使用文件存储或打开某个特定文件都是很常用做法,而在跨平台中,每个平台都有自己 IO 坑。...如何在 Xamarin.Froms 里面让用户可以选择打开哪个本文文件,需要照顾多个不同平台文件访问方式 Xamarin.Forms 右击管理 NuGet 程序包,搜寻 Xamarin.Plugin.FilePicker..." /> 如果不是让用户选取文件内容,那么 Xamarin.Essentials 这个提供了 Xamarin 原生 API 交互库就完全足够使用了 界面上添加一个按钮,用来让用户选取文件内容...="Center" Text="选取文件" Clicked="Button_OnClicked"> 在后台代码添加按钮点击时让用户选择文件代码...将文件分享给其他应用打开 这个项目所有代码放在 github 欢迎小伙伴访问

1.9K20

C#使用Xamarin开发可移植移动应用(1.入门与Xamarin.Forms页面),附源码

例如(但不限于)iOS上CoreMotion,PassKit和StoreKit; NFC和Android上Google Play服务; Xamarin.Forms创建UI界面有两种技术。...今天主要学习Xamarin.Forms中提供各类页面,如图: 效果如下: 正文 1.创建跨平台可移植项目    首先我们先新建一个项目,具体如图: 第二步我们选择如下: 注意:这里一定要选择可移植类库...windowForm很相似呢~ App.xaml代码,我们先不管,他类似于windowFormProgram.cs,是帮我们启动项目....我们进入到xaml,标签下编写代码: <Button Text="打开CarouselPage" Clicked="Button_Clicked...效果如图: 这是一个很有用<em>的</em>基础页面,我们<em>在</em>很多APP<em>中</em>应该都见过. 我们看看来如何使用它. 我们直接新建项.如图选择: 点击添加,会添加4个文件,如图: 我们一个个来讲解.

5.1K61

3. 单页App

上一篇文章我们创建了 Xamarin 应用程序,当我们创建完应用程序后 VS 2019 帮我们生成了一个名为 MainPage xaml 文件,这个文件在当前项目中是仅有的页面,我们称这个应用程序称为...下面我们就修改一下上一篇文章所创建应用程序。首先我们打开 MainPage.xaml 文件,将模板代码修改为如下形式: <?...其中两个按钮控件水平放置了 Grid ,并且给这两个按钮绑定了保存和删除事件。 Note:上述控件我将在后面进行详细讲解。...打开 MainPage.xaml.cs 文件,我们编写刚才给两个按钮绑定两个事件,首先我们先编写保存事件 SaveButton_Clicked ,这个事件将会在保存按钮被点击时候会将文本输入控件内容保存到本地文件...我们填写要保存内容然后单击保存按钮,我们所填写内容将会被保存在本地文件 note.nt 。当我们退出应用程序再次进入后,将会把保存在文件内容显示文本输入控件

1.2K10

Xamarin 学习笔记 - Layout(布局)

本篇教程,我们将了解Xamarin.Forms几个常用Layout类型并介绍使用这几种布局类似进行跨平台移动开发时示例。 ?...> 我们示例,我们将两个按钮组合成一个水平堆叠效果(如第一张图片所示)。...有时,你可能希望更多地控制屏幕上某个对象位置,比如说,你希望将它们锚定到屏幕边缘,或者希望覆盖住多个元素。 AbsoluteLayou,我们会使用最重要四个值以及八个设置选项。...它比StackLayout更加通用,提供列和行两个维度以供辅助定位。不同行之间对齐视图也很容易。实际使用起来与WPFGrid非常类似甚至说没什么区别。...以上示例,颜色为Yellow GreenBoxView将不显示,然后我们向其中添加一个ScrollView,通过滚动,我们就可以看到全部内容。

1.6K20

C#使用Xamarin开发可移植移动应用(4.进阶篇MVVM双向绑定和命令绑定)附源码

今天学习内容? 今天我们讲讲XamarinMVVM双向绑定,嗯..需要有一定MVVM基础.,具体什么是MVVM - -,请百度,我就不多讲了 效果如下: ?...首先,我们会发现ContentPagexmlns定义多了一个local定义.这个很重要,他是用来让我们xaml引用其他程序集中类,类似于Using作用....我们创建三个数值,他们与控件Slider来绑定,并控制.更新值同时,求和.得到NumSun值. 界面,我们有一个清空Button来清除这个ViewModel值....然后就一一对应xaml绑定了相关属性.所有的Slider绑定中都有个Mode=TwoWay,意思就是,这个属性为双向绑定,控件变更它同时,也会在ViewModel变更....我们回到代码,会发现,AddNumViewModel,我们定义了一个继承自 ICommandCleanCommand 命令,并在构造函数实现了它 我们xaml,buttom绑定了这个事件

1.6K100

ListviewCachingStrategy=RetainElement

ListView CachingStrategy 缓存策略有3种模式。 RecycleElement 1 指示不需要单元格绑定上下文将更新至所需单元格绑定上下文。...RecycleElementAndDataTemplate 3 指示数据模板类型不仅缓存 RecycleElement 指定行为,也缓存 DataTemplateSelector 所选择...RetainElement 0 指示对于列表视图 ItemsSource 属性每个项目,都将通过 DataTemplate 构造一个唯一元素。...因为我listview绑定了好几组不同数据来回切换,有时候感觉项目的状态残留着上一组状态。没有完全清空。没有耐心查找,我代码问题了。就查了下CachingStrategy 缓存策略。...原来用是 RecycleElement ,我改成了RetainElement,之后这种残留就没有了。应该是xamarin内部问题?

50510

C#使用Xamarin开发可移植移动应用终章(11.获取设备信息与常用组件,开源一个可开发模版.)

基本算是涵盖了常见APP大部分功能吧.. WebView,二维码扫描,开灯,地图,定位,终端设备信息 正文 Xamarin社区其实有很多比较方便组件,方便大家直接使用....因为是英文,而且单词比较简单,所以我直接用谷歌翻译了,表格如下: 名称 描述 NuGet 文档和来源 创造者 录音机 设备麦克风输入上录制音频。...NuGet GitHub上 @JamesMontemagno 烤面包 显示吐司/弹出式通知简单方法。...红框三个项目,都需要引用同样nuget库.因为PCL是接口,各个平台客户端才是具体实现....需要仔细看文档说明,有些插件是需要初始化,所以需要你客户端项目中初始化,比如二维码插件( ZXing.Net.Mobile) 剩下代码就很简单了,我们先创建一个Page,并添加listView控件如下

4K71

再见Xamarin,微软官宣跨平台 UI 框架 MAUI

多年来,UPS,Ernst&Young 和 Delta 等公司一直利用 .NET 上 Xamarin 来推动其业务发展。...最后,您将始终可以访问本机底层操作系统 API,并且通过特定于新平台集成将比以往更加轻松。 不同平台下,您可以添加特定操作系统源代码文件并访问本机API。...MAUI将在所有这些版本可用,并支持现有的MVVM和XAML模式以及将来功能,例如使用C#甚至是Blazor模型视图更新(MVU)。...从 Xamarin.Forms 过渡到 .NET MAUI Xamarin.Forms 开发人员将使用他们已经了解和喜爱所有相同控件和 API 来开始 .NET MAUI 中使用新项目运行。...MAUI 将以与 Xamarin.Forms 相同6周节奏进行发布。 我们已经GitHub上发布了MAUI路线图,并邀请您今天就加入我们!

11.4K20

Xamarin.Forms读取并展示Android和iOS通讯录 - TerminalMACS客户端

,即使用Xamarin.Forms获取和展示Android和iOS通讯录信息,下面是最终效果,由于使用是真实手机,所以联系人姓名及电话号码打码显示。...下图来自:https://www.xamboy.com/2019/10/10/getting-phone-contacts-in-xamarin-forms/,本功能是参考此文所写,所以直接引用文中图片...工程Info.plist文件添加通讯录权限使用说明 5、Android工程添加读取通讯录权限配置:AndroidManifest.xml <uses-permission android:name...if (PermissionUtil.VerifyPermissions(grantResults)) { // 已授予所有必需权限,显示联系人片段。...namespace TerminalMACS.Clients.App.Droid { public static class PermissionUtil { /** * 通过验证给定数组每个条目的值是否为

4K20

C#使用Xamarin开发可移植移动应用(2.Xamarin.Forms布局,本篇很长,注意)附源码

正文 0.使用Xamarin.Forms Previewer预览界面效果 Xamarin.Forms Previewer是微软提供可以不运行程序,直接预览界面效果工具.....1.1布局方向 方向嘛..就是横向,和竖向.通过StackLayout 设置Orientation属性....="Horizontal"> 1.2定位 大家可以看到,我StackLayout 控件里面加了2个属性: VerticalOptions(垂直位置...其实从字面就可以看出来,比例值就是类似HTML10%,20%之类..绝对值就是类似HTML5px,10px之类 当然,我们Xamarin有所不同.   比例值需要设置为.1(注意前面有个"....很简单,直接在Grid添加控件,并写好对应行列就行了.如下 那么,这个label控件就会显示

2.2K70

dotnet Multi-platform App UI 多平台应用 UI 框架简介

.NET 5 微软统一了整个 .NET 平台,将 .NET Core 和 Mono 以及基于 Mono Xamarin 放在一起,于是就可以使用相同一个 BCL 基础库和 SDK 工具链 当咱考虑如何在...每个平台和UI控件本机功能都可以通过一个简单跨平台API触手可及,您可以提供不妥协用户体验同时共享比以前更多代码 单一项目开发体验 .NET MAUI 构建考虑了开发人员生产力,包括开发人员需要项目系统和跨平台工具...API .NET MAUI新项目中运行。...此后所有工作都将转移到.NET 6 Xamarin.Forms将于今年晚些时候发布新主版本,并继续2021年11月通过.NET 6 GA每6周发布次要版本和服务版本。...欢迎小伙伴给这个项目点星星以关注这个项目的更新和通知,也欢迎小伙伴 Issus 上讨论。

5.2K20

.NET 官宣跨平台 UI 框架 MAUI

多年来,UPS,Ernst&Young 和 Delta 等公司一直利用 .NET 上 Xamarin 来推动其业务发展。...最后,您将始终可以访问本机底层操作系统 API,并且通过特定于新平台集成将比以往更加轻松。 不同平台下,您可以添加特定操作系统源代码文件并访问本机API。...MAUI将在所有这些版本可用,并支持现有的MVVM和XAML模式以及将来功能,例如使用C#甚至是Blazor模型视图更新(MVU)。...从 Xamarin.Forms 过渡到 .NET MAUI Xamarin.Forms 开发人员将使用他们已经了解和喜爱所有相同控件和 API 来开始 .NET MAUI 中使用新项目运行。...MAUI 将以与 Xamarin.Forms 相同6周节奏进行发布。 我们已经GitHub上发布了MAUI路线图,并邀请您今天就加入我们!

3.8K20

echarts图表Tab页width: 100%失效导致第一个Tab页之后Tab页图表不能正常显示问题

解决Tab切换echarts图表不能正常显示问题: // 绘图div父容器宽度 let w = $('.figure').width(); $('#fig-t').css('width...', w); // 获取父容器宽度直接赋值给图表以达到宽度100%效果 $('#fig-f').css('width', w); // 获取父容器宽度直接赋值给图表以达到宽度100%效果...fig_e = echarts.init(document.getElementById('fig-e'), 'white', {renderer: 'canvas'}); 上面只是解决了Tab页切换导致图表显示问题..., 由于是图表初始化时候设置了容器宽度,图表并不能随窗口缩放自适应,下面是解决方法: window.onresize = function () { // 绘图div父容器宽度 let...').css('width', w); // 获取父容器宽度直接赋值给图表以达到宽度100%效果 $('#fig-e').css('width', w); // 获取父容器宽度直接赋值给图表以达到宽度

2.2K20

译 | .NET Multi-platform App UI 多平台应用 UI 框架简介

.NET 5 微软统一了整个 .NET 平台,将 .NET Core 和 Mono 以及基于 Mono Xamarin 放在一起,于是就可以使用相同一个 BCL 基础库和 SDK 工具链 当咱考虑如何在...每个平台和UI控件本机功能都可以通过一个简单跨平台API触手可及,您可以提供不妥协用户体验同时共享比以前更多代码 单一项目开发体验 .NET MAUI 构建考虑了开发人员生产力,包括开发人员需要项目系统和跨平台工具...API .NET MAUI新项目中运行。...此后所有工作都将转移到.NET 6 Xamarin.Forms将于今年晚些时候发布新主版本,并继续2021年11月通过.NET 6 GA每6周发布次要版本和服务版本。...欢迎小伙伴给这个项目点星星以关注这个项目的更新和通知,也欢迎小伙伴 Issus 上讨论。

4.7K10
领券