windows phone中ListBox的简单使用
学习windows phone数据绑定的一点点心得,在wp系统的APP中经常遇到这样风格的软件,那它们到底怎样实现的呢?我就大致去做了一下,比较粗虐,但基本的都已经有了,实现后的结果为:
哇,这个图截的貌似有点大了,没事,我主要模仿着做了一个新闻app,里面的标题那些都超出了范围,这个可以改进,我就懒得去弄这个了,嘻嘻。。。。
进入重点,要完成这个功能,首先要有一个类,毕竟面向对象嘛,这里我定义了一个New类,如下:
class New { public New() { } public New(string imageUri,string title,string content) { this.ImageUri = imageUri; this.Title = title; this.Content = content; } public string ImageUri { get; set; } public string Title { get; set; } public string Content { get; set; } }
主要用来存放,新闻的图片路径,标题和正文,比较随便的弄一个类,然后就是编写xaml文件:
<Grid x:Name=" Margin="12,0,12,0"> <ListBox Grid.Row=" Name="listBox1" > <ListBox.ItemTemplate> <DataTemplate> <Grid Width="> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" /> <ColumnDefinition Width="Auto" /> </Grid.ColumnDefinitions> <Image Margin=" Stretch="Fill" HorizontalAlignment="Left" VerticalAlignment="Top" Source="{Binding ImageUri}"/> <Grid Grid.Column=" Name="grid1" > <Grid.RowDefinitions> <RowDefinition Height="60*" /> <RowDefinition Height="60*" /> </Grid.RowDefinitions> <TextBlock FontSize=" Text="{Binding Title}" /> <TextBlock FontSize=" /> </Grid> </Grid> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </Grid>
最后在,xaml.cs里面绑定了下,这里我只是随便弄了一些,其实正确的写法不应该直接在.cs文件里面来绑定而应该用一个方法或者类来处理这些数据,为了方便我就直接在.cs文件里面绑定了:
ObservableCollection<New> DataList = new ObservableCollection<New>(); DataList.Add(new New("../Images/1.jpg", "中国铁路迎来节后新一轮返程客流高峰", "中国铁路公安机关全力确保春运返程客流平稳有序|铁路机关应")); DataList.Add(new New("../Images/2.jpg", "向往", "年近60的王某是本市丰台区人,20多岁时就因故意伤害被劳动教养3年")); DataList.Add(new New("../Images/3.jpg", "河南两地“养死熊猫”“没收老虎”引发热议", "一个穿红衣裳的女孩不停的将食物戳在棍子上喂食,以控制熊猫配合交过费用的游客拍照。")); DataList.Add(new New("../Images/4.jpg", "劳动法反倒会让百姓失业?", "近日,俞敏洪在某企业家论坛评价《劳动法》,认为:")); DataList.Add(new New("../Images/5.jpg", "证监会严打老鼠仓 将突击抽查", "在周四小幅回调后,上证指数周五再度拉出一条中阳线,虽然深圳中小板和创业板走势成交有所萎缩")); DataList.Add(new New("../Images/6.jpg", "焦点直击:女儿为给父亲办户口 竟与其结婚", "#焦点直击#【女儿为给父亲办户口 竟与其结婚】林丽(化名)想把父亲的户口从老家迁到成都")); DataList.Add(new New("../Images/7.jpg", "枪手不进球,五个方面来解析", "曼联与阿森纳本赛季的第二场交锋在一次闷平中结束。这个结果估计两边都不是太高兴")); listBox1.ItemsSource = DataList;
好,讲到这里就差不多了,我再把我的源码附上让大家学习学习,我也刚开始学wp开发不久,还望大家一起来讨论下,打算接下来就深入下MVVM模式的开发,不过wp开发的文献不多啊,所以学习比较辛苦,这个路程坎坷,不过本着自己是学.net的,对asp.net和windows phone的兴趣,也就有动力学下去了,还望大家多多支持啊
咦????写到这里发现,不能上传源码??博客园没有提供上传源码压缩包?还是说我不懂,好吧,用博客园不久,之前都是受博客园的帮助,那大家领悟吧
windows phone中ListBox的简单使用的更多相关文章
- C# Winfom 中ListBox的简单用法
https://www.cnblogs.com/xielong/p/6744805.html Winform控件ListBox的用法 1.如何添加listBox的值 this.listBox1.Ite ...
- MFC中Listbox控件的简单使用
MFC中listbox控件是为了显示一系列的文本,每个文本占一行. Listbox控件可以设置属性为: LBS_CHILD :(默认)子窗口 LBS_Visible :(默认)可视 LBS_M ...
- 在 Windows Phone 中,为 Grid 添加 Tilt 效果
在 Windows Phone 中,Tilt 效果是比较经典的效果,我们可以很简单的为按钮等控件添加这样的效果(使用 Windows Phone Toolkit 的Tilt 效果),但是,如果我们想要 ...
- 如何托管ASP.NET Core应用到Windows Service中
(此文章同时发表在本人微信公众号"dotNET开发经验谈",欢迎右边二维码来关注.) 题记:正在构思一个中间件的设计,考虑是否既可以使用最新的技术,也可以兼顾传统的部署模式.所以有 ...
- UEFI+GPT模式下的Windows系统中分区结构和默认分区大小及硬盘整数分区研究
内容摘要:本文主要讨论和分析在UEFI+GPT模式下的Windows系统(主要是最新的Win10X64)中默认的分区结构和默认的分区大小,硬盘整数分区.4K对齐.起始扇区.恢复分区.ESP分区.MSR ...
- 【翻译】Windows 10 中为不同设备加载不同页面的3种方法
在以前,为PC和手机做App是两个工程,PC和手机各一个.在Windows 10中会发现只有一个了,对于简单的页面变化可以使用VisualState来解决,但是比如网易云音乐这种PC版和手机版差异巨大 ...
- 解决vista和win7在windows服务中交互桌面权限问题:穿透Session 0 隔离
在某国外大型汽车公司BI项目中,有一个子项目,需要通过大屏幕展示销售报表,程序需要自动启动和关闭.开发人员在开发过程中,发现在Win7的service中不能直接操作UI进程,调查过程中,发现如 ...
- MongoDB学习(1)—在Windows系统中安装MongoDB
概述 本文主要介绍在Windows系统安装MongoDB的方法. MongoDB官方网址:http://www.mongodb.org/,最新版本为2.6.7. 注意: 从2.2版本开始,MongoD ...
- memcache的windows下的安装和简单使用
原文:memcache的windows下的安装和简单使用 memcache是为了解决网站访问量大,数据库压力倍增的解决方案之一,由于其简单实用,很多站点现在都在使用memcache,但是memcach ...
随机推荐
- 【MySql】5.6.14版本的安装和测试
当前状态:apache2.4.6和php5.5.6已经安装成功: mysql的安装和测试: 一.安装mysql5.6.14,参考http://wenku.baidu.com/link?url=_0jk ...
- 对话框AlertDialog的基本类型与创建
测试代码: 布局: activity_main.xml: <LinearLayout xmlns:android="http://schemas.android.com/apk/res ...
- Java 装箱 拆箱
Java 自动装箱与拆箱 ??什么是自动装箱拆箱 基本数据类型的自动装箱(autoboxing).拆箱(unboxing)是自J2SE 5.0开始提供的功能. 一般我们要创建一个类的对象的时候,我 ...
- python 核心编程第二版 课后习题 第11章
11-3 函数.在这个练习中,我们将实现 max()和 min()内建函数. (a) 写分别带两个元素返回一个较大和较小元素,简单的 max2()核 min2()函数.他们应该可以用任意的 pytho ...
- 刀哥多线程全局队列gcd-09-global_queue
全局队列 是系统为了方便程序员开发提供的,其工作表现与并发队列一致 全局队列 & 并发队列的区别 全局队列 没有名称 无论 MRC & ARC 都不需要考虑释放 日常开发中,建议使用& ...
- Laravel5.1控制器小结
控制器一般存放在app\Http\Controllers目录下,所有Laravel控制器都应继承基础控制器类. 基础控制器 基础控制器例子: <?php namespace App\Http\C ...
- oracle - redo 损坏或删除处理方法
OS: Oracle Linux Server release 5.7 DB: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - ...
- hdu 1195 Open the Lock
题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=1195 Open the Lock Description Now an emergent task f ...
- android开发系列之多线程
今天在这篇博客里面,我只想谈谈自己对程序开发里面避无可避的一个问题-多线程的一些看法与思考. 其实说到多线程这个名称相信只要接触过软件这个行业的人都已经耳熟能详了,但是如果被问到到底什么才是多线程呢? ...
- Openstack:ice-house安装过程
#apt-get install ntpdpkg-reconfigure tzdata --> Asia -->Shuanghai #apt-get install python-mysq ...