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 ...
随机推荐
- C# 平时碰见的问题【4】
1. 模糊查询 like的参数化写法 string keyword="value"; // 要模糊匹配的值 错误示范: sql: string strSql=" ...
- Pycharm 使用 (一)
学习[Python基础教程]到后面的练习阶段就觉得python自带的IDLE有点out的感觉,于是就在网上搜索好用的IDE, 挺多人推荐Pycharm的 不仅跨平台而且还支持django等框架; 初次 ...
- wing IDE破解方法
WingIDE是我接触到最好的一款Python编译器了.但其属于商业软件,注册需要一笔不小的费用.因此,这篇简短的文章主要介绍了破解WingIDE的方法.破解软件仅供学习或者教学使用,如果您是商业使用 ...
- 如何查找STM32开发资料
Ⅰ.概述 该文写给那些处于初学ST芯片开发.英文不好而又想偷懒的人. 该文主要的目的是提醒大家:学习一门技术是需要舍得花功夫,捷径是你在起点与终点之间不断的探索,最终总结出来的一条适合自己的路. 下面 ...
- m3u8
audo apt-get install pkg-configsudo apt-get install automake autoconf m4 libtool sudo apt-get instal ...
- [原创]PostgreSQL Plus Advince Server在 HA环境中一对多的Stream Replication配置(四)
八.HA环境下配置多节点的sshVIP(s1):[root@s1 ~]# mkdir /opt/PostgresPlus/9.2AS/.ssh[root@s1 ~]# chown enterprise ...
- Oracle Database Gateway 安装
在[Oracle HS (Heterogeneous Services)深入解析 及协同Gateway工作流程]一文中主要主要介绍了HS的工作原理,及其如何协同Gateway一起工作.那么了解Gate ...
- 用Swift重写公司OC项目(Day1)--程序的AppIcon与LaunchImage如何设置
公司之前的APP呢经过了两次重写,都是使用OC由本人独立开发的,不过这些东西我都不好意思说是自己写的,真心的一个字:丑!!! 客观原因来说主要是公司要的特别急,而且注重的是功能而非效果,公司的美工之前 ...
- Redis 在windows环境下安装
一.下载适合自己的windows版本 下载地址:https://github.com/dmajkic/redis/downloads 当你解压后,就拥有了全套的应用文件
- (转)android Fragments详解一:概述
Fragment是activity的界面中的一部分或一种行为.你可以把多个Fragment们组合到一个activity中来创建一个多面界面并且你可以在多个activity中重用一个Fragment.你 ...