设为首页 收藏本站
查看: 738|回复: 0

《深入浅出Windows Phone 8 应用开发》读书疑问解惑之控件与布局篇

[复制链接]

尚未签到

发表于 2015-5-23 11:24:36 | 显示全部楼层 |阅读模式
  自从Windows Phone 7出来之时,本人就有意要学习之并买wp手机,但是碍于工作繁忙,均未能如愿,今年二月份果断入手《深入浅出Windows Phone 8 应用开发》,搭建Win 8/Windows Phone 8开发环境。原本考虑学习Win8 开发,但是觉得Win8的Metro界面虽炫,但是对于习惯win7/Xp操作的用户而言实用性暂时还不大,于是决定先入门Wp8。
  这本书写得非常基础,适合会C#而未做过Wp7的同仁入手,如果学过WP7的,就不建议买了,不过里面还是有不少篇幅讲解Wp8的一些新特性的,例如async异步编程的使用。如果您也在看此书,碰到的疑问不妨也分享出来噢!
  书中例子比较入门,因而我总是想做出更棒的Demo,例如,我在编写代码时一直想我如何能像母版页那样设置一个程序的大体界面风格,我试过编写BasePage,但是这个xaml的分部类中含系统自动生成代码,改不了其继承的基类,因而我目前找不到什么好办法来达到我的上述需求,我目前的解决方案是使用UserControl,但是所有页面都要添加,麻烦啊,如果看到这里能帮我的希望你教我下,不尽感激!!
  好了到这里如果您是WP开发的熟客就不用往下看了,最好给点经验赐教哈。以下开始针对我碰到的问题与解决方法进行记录。
  1.编程实现页面跳转:控件HyperlinkButton可以轻松实现,但是如果是编程实现呢,例如在button事件里面去进行跳转,问了下谷哥,使用以下代码即可



this.NavigationService.Navigate(new Uri("/ProgressBarPage.xaml", UriKind.Relative));
  2.编码实现诸如“Grid.Row”之类的属性:这个是在编写Gird布局Demo时遇到的,书中给出了计算器的布局,但是都XAML中定义的,而我觉得这样导致了过多的代码Copy,与我的编码原则相悖,因而我必须要循环实现,找了MSDN资料,解决方案http://msdn.microsoft.com/zh-cn/library/vstudio/system.windows.controls.grid.setcolumn(v=vs.90).aspx。
  以下是我生成计算器的C#代码



private void PhoneApplicationPage_Loaded_1(object sender, RoutedEventArgs e)
{
Button btn = null;
int j = 0;
for (int i = 1; i < 10; i++)
{
btn = new Button();
btn.Name = "btn" + i;
btn.Content = i;
btn.Width = 150;
btn.Height = 150;
btn.FontSize = 80;
btn.VerticalAlignment = System.Windows.VerticalAlignment.Center;
btn.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
btn.VerticalContentAlignment = System.Windows.VerticalAlignment.Center;
btn.HorizontalContentAlignment = System.Windows.HorizontalAlignment.Center;
//btn.SetValue(DependencyProperty.Register("Grid.Row", null, null, null), 3);
Grid.SetRow(btn, j + 1);
Grid.SetColumn(btn, (i - 1) % 3);
ContentPanel.Children.Add(btn);
if (i % 3 == 0)
{
j++;
}
}
}
  XAML代码:


















  我绝对是WP8的新手,希望能和各位大虾,同仁多多交流分享。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-69792-1-1.html 上篇帖子: Windows Phone 8 MD5 下篇帖子: Windows 8 Charm工具条
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表