最近在研究Xamarin的东西,做到ListView遇到了一些瓶颈,像在数据庞大的情况下,该怎么针对ListView中的数据分组呢?

  基于能力有限的问题,暂时写了一个只可以实现功能的临时解决方案,毕竟,样式和易用性啊还是有点。。。

  废话不多说,直接上代码吧

  首先我写了一个简单的ListView和一个Button按钮

  

 <StackLayout>
<ListView x:Name="listviewData"> </ListView>
<Label x:Name="lblPageCount" TextColor="White"></Label>
<Button Clicked="Button_OnClicked" Text="Next"/>
</StackLayout>

  后台的话,只是在构造函数中加入了默认数据

  

public List<string> StrListData { get; set; }
public int PageIndex { get; set; } //当前页
public int PageSize { get; set; } //显示条数
public int PageCount { get; set; } //总页数
public int RecordCount { get; set; } //记录的总条数 public ListTestPage()
{
InitializeComponent();
List<string> strList = new List<string>();
for (int i = 1; i <= 100; i++)
{
strList.Add("Name" + i);
}
StrListData = strList;
PageIndex = 0;
PageSize = 10;
PageCount = 100;
this.lblPageCount.Text = (PageIndex + 1).ToString();
List<string> strList2 = strList.GetRange(PageIndex, PageSize);
this.listviewData.ItemsSource = strList2;
}

  因为我只是为了写一个小例子来测试一下,所以全部都写到一块去了,在MVVM下应该也不会有什么问题吧,还没来得及测试。。

  

  public void GetListData()
{
PageIndex++;
int pageStart = PageIndex * PageSize;
int pageEnd = (PageIndex + 1) * PageSize;
this.lblPageCount.Text = (PageIndex + 1).ToString();
List<string> strList2 = StrListData.GetRange(0, pageEnd);
this.listviewData.ItemsSource = strList2;
} private void Button_OnClicked(object sender, EventArgs e)
{
GetListData();
}

  然后这就是按钮的实现方法了。

  

  其实我就是单纯的利用了ListView的GetRange。

  最近还在研究更好的方法。

  如果吧友有更好的方法和案例可以拿给小弟来参考一下的话,希望你们可以给我留言发一下网站demo啊案例啊什么的,我好学习一下。

  外网的也可以。

  最后,谢谢大家啦~

Xamarin.Forms ListView点击按钮刷新最新数据的更多相关文章

  1. 菜鸟的Xamarin.Forms前行之路——按钮的按下抬起事件的监控(可扩展至其他事件)

    提问:监控按钮的点击事件,可以通过按钮的Click事件,或者Command绑定,那么如何监控按钮的按下与抬起,或者移动,长按,双击等事件? 解决方法:各个平台自定义渲染依赖注入. 共享项目PCL: 1 ...

  2. jQuery 点击按钮刷新页面

    //页面加载时绑定按钮点击事件 $(function () { $("#按钮id").click(function () { refresh(); }); }); //点击按钮调用 ...

  3. Xamarin.Forms listview中的button按钮,实现带着参数返回上一级页面

    今天在做列表显示的时候遇到一个问题,就是在ListView中如何才能让一个button的按钮工作并且包含参数呢? 其实有点类似于rep里的控件无法起获取一样.在Xamarin中,当你button绑定事 ...

  4. JavaScript 弹出窗体点击按钮返回选择数据的实现

    首先是父页面的代码: <head runat="server"> <title>无标题页</title> <%-- <script ...

  5. yii防止延迟用户多次点击按钮重复提交数据

    是不是被用户的行为所困扰? 一. 一个表单用户点击提交按钮了N次,这也导致了数据提交了N次. 为了此受到了测试的欺辱,受到了老板的批评? 不用怕,它就是来拯救你的. 第一步:打开命令行,敲入 comp ...

  6. GrideVlew提供点击按钮添加新数据,单击项目修改,长按删除功能

    package com.example.wang.myapplication; import android.app.AlertDialog; import android.content.Dialo ...

  7. 关于xamarin.forms 中 list 的loadmore

    前言 最近几天在研究上拉加载啊,下拉刷新啊什么的.然而坑爹的事情总是那么多.在xamarin.forms中,list自带的,并没有上拉加载的这个属性(难道当初他们封装方法时,就不会想到数据多了会咋整吗 ...

  8. Xamarin Forms:小马过河,王者归来

    因为我媳妇的原因,去年下半年从零开始学习Android原生开发,做了一个答题库app.整体给我的感觉是入门难度不大,前期折腾一番,大部分时间都是花在开发上面,其实任何一门语言都是如此. 今年我又有另一 ...

  9. Xamarin.Forms 开发资源集合(复制)

    复制:https://www.cnblogs.com/mschen/p/10199997.html 收集整理了下 Xamarin.Forms 的学习参考资料,分享给大家,稍后会不断补充: UI样式 S ...

随机推荐

  1. IP路由选择

    当一个ip数据包准备好了,它是如何到达目标主机的? ?首先这个ip数据报文的生命周期即ttl值是否为0了,如果是0就丢弃了 ?搜索路由表中有没有完全匹配的主机地址 ?匹配主机失败后,搜索路由表中同子网 ...

  2. MVC 上传 下载

    [上传]带进度条 view  注:添加easyui的js文件 <script type="text/javascript"> function fileSelected ...

  3. PHP访问带密码的Redis

    1. 设置Redis密码,以提供远程登陆打开redis.conf配置文件,找到requirepass,然后修改如下: requirepass yourpassword yourpassword就是re ...

  4. shell面试题目总结

    1.如何理解shell脚本中第一行#!/bin/sh #!为特殊的表示符,其后是解释此脚本的shell的路径.此脚本使用/bin/sh进行解释执行. 2.如何向脚本传递参数. 脚本名字 参数1 参数2 ...

  5. installing mysql,this may take a few minutes,hold on plz wdcp卡住解决办法

    centos6安装wdcp时make in progress卡住的解决办法 今天在一台centos6的vps上安装wdcp出现的这个问题,到安装程序滚动至下面这里时出现"卡死". ...

  6. RabbitMQ学习总结 第七篇:RCP(远程过程调用协议)

    在http://www.cnblogs.com/leocook/p/mq_rabbitmq_2.html 这篇博文中我们实现了怎么去使用work queue来把比较耗时的任务分散给多个worker. ...

  7. SVN更新时,校验和不匹配

    svn检出时出现校验和不匹配. 解决方法: 1. 在另外地方检出,然后找到对应文件所在的.svn/entries文件,用新检出的entries文件覆盖原来发生错误的entries文件. 2. 如果是团 ...

  8. Python之路-python(css、JavaScript)

    css JavaScript 一.CSS 分层: position: fixed;(固定到页面的具体位置) 例如:返回顶部 <!DOCTYPE html> <html lang=&q ...

  9. 自定义EL表达式的函数

    编写描述的tld文件放到web-inf/目录下,才能在jsp页面上调用 <?xml version="1.0" encoding="UTF-8" ?> ...

  10. linux 监测函数

    http://www.ttlsa.com/linux/the-nethogs-view-each-process-uses-bandwidth/ Linux的IO性能监控工具iostat详解 http ...