首页 > 代码库 > Peoject Siena - 创建Win8应用实例

Peoject Siena - 创建Win8应用实例

开启Project Siena程序,创建新的App应用,将主窗体(场景)命名ScreenMain,保存项目为MyAddress。

分别创建ScreenAddress、ScreenAddress和ScreenReport三个场景,用于浏览RSS,添加新的通讯录以及好友分类统计,ScreenMain则是查看所有好友信息的场景。

在ScreenMain场景添加3个形状控件(Circle),分别在OnSelect属性上配置导航Navigation,跳转至其它3个场景。

Navigate(ScreenReport, ScreenTransition!Fade)Navigate(ScreenRss, ScreenTransition!Fade)Navigate(ScreenAddress, ScreenTransition!Fade)

技术分享

在ScreenAddress、ScreenReport和ScreenRSS场景中,添加形状(Back Arrow)用于在OnSelect属性上导航(Navigation)到主场景ScreenMain。

Navigate(ScreenMain, ScreenTransition!Fade)

技术分享

 

关于ScreenRss,首先,获取RSS地址:http://feed.cnblogs.com/blog/u/144942/rss

在Siena项目中,使用ALT+D进入数据管理,添加RSS数据,导入地址即可

技术分享

在ScreenRss中,添加Gallery(垂直文本模板),将控件Items属性指向RSS_1,接着,在Gallery模板中,自定义Label标签,绑定标题和内容等属性。

创建Gallery控件并摆放布局

技术分享

配置Gallery数据源Items属性,并配置模板中各个控件的绑定属性,注意将正文区域显示改成HTMLLabel,可以格式化显式文章内容。

技术分享

在创建ScreenAddress之前,首先创建Excel文件,保存联系人分类:

技术分享

接着,使用菜单套用表格式,为选中内容套用一个表格式

技术分享

最后,为表起名AddressType

技术分享

 

关于ScreenAddress场景,用于添加新的联系人,分别添加场景布局如下:

技术分享

首先,为DropdownList(好友类型)绑定数据源,添加Excel数据,指向刚才创建的好友类型即可。

接着,为Input(输入框添加HintText:提示信息)

将Audio(音频预览)的Media属性,绑定到麦克风的Audio属性(MicrophoneItem!Audio

将Camera(摄像头)的Contrast属性绑定到Slider(滑动条)的Value属性(SliderContrast!Value)

将Image(图片预览)的Image属性绑定到Camera的Photo属性(CameraItem!Photo)

添加按钮(Button)用于保存内容到集合,在Disabled属性上配置函数(判断用户名和联系方式必须填写):

IsBlank(TextName!Text) || IsBlank(TextPhoneNumber!Text)

在按钮OnSelect属性上配置函数,添加联系人到集合:

If(CountIf(Items,TextName!Text in Name)=0,Collect(Items,{Name:TextName!Text,PhoneNumber:TextPhoneNumber!Text,Type:DropdownAddressType!Selected!联系人类别,Audio:MicrophoneItem!Audio,Video:CameraItem!Photo,Pic:PenItem!Image}))

在Pen(画笔)控件右下角添加按钮Clear,并配置Pen(画笔的)Clear属性,用于清除画笔内容:

ButtonClear!Pressed

最后页面布局如下

技术分享

关于ScreenMain场景,主要用于查询和显示所有联系人,并实现删除联系人的功能,布局如下

技术分享

绑定Gallery控件Items属性,通过文本框过滤

Filter(Items,TextSearchName!Text in Name)

在Image控件上绑定选中项的Pic属性:

GalleryItem!Selected!Pic

再删除按钮上的OnSelect属性编写函数,删除当前元素

Remove(Items,ThisItem)

在页面添加导入(Import Data)和导出(Export Data)控件

在导出控件中,配置导出的属性Items,

在导入控件中,配置OnSelect属性,导入成功后,重置Items集合

Clear(Items);Collect(Items,ImportData!Data)

技术分享

在Report场景中,添加Pie Chart(饼图),绑定自定义集合ReportItems:

Clear(ReportItems);Collect(ReportItems,{X:"家人",Y:CountIf(Items,Type in "家人")},{X:"朋友",Y:CountIf(Items,Type in "朋友")},{X:"同事",Y:CountIf(Items,Type in "同事")},{X:"其它",Y:CountIf(Items,Type in "其它")})

将PieChart数据源绑定到ReportItems上

添加Label标签,Text属性绑定到选中项X标签,先是选中类别

PieChartReport!Selected!X

添加ListBox控件,数据源绑定到

Filter(Items,Type in LabelAddressType!Text)

效果如下

技术分享

添加Label标签,Text属性绑定到ListBox选中项的PhoneNumber上

ListboxUsers!SelectedItems!PhoneNumber

最后效果如下

技术分享

 

Peoject Siena - 创建Win8应用实例