博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Win10 UWP开发实现Bing翻译
阅读量:6280 次
发布时间:2019-06-22

本文共 2255 字,大约阅读时间需要 7 分钟。

微软在WP上的发展从原来的Win7到Win8,Win8.1,到现在的Win10 UWP,什么是UWP,UWP即Windows 10 中的Universal Windows Platform简称。即Windows通用应用平台,在Win 10 Mobile/Surface(Windows平板电脑)/PC/Xbox/HoloLens等平台上运行,uwp不同于传统pc上的exe应用也跟只适用于手机端的app有本质区别。它并不是为某一个终端而设计,而是可以在所有windows10设备上运行。

 

 

简单的说,uwp就是通用应用的意思可以在电脑端,手机端,或其他设备通用。不用分别为不同的平台设计不同的软件。即一个软件就可以通吃。这估计现在是系统的一个软件发展趋势了。不管是开发者,还是使用者,都省事。

 

废话不多说,科普完了,直接进入正题,先给大家看一下效果图,主要是功能简单地实现了,界面有点丑QAQ

 

 

 

开发工具环境:

VS2015 Update2+Win10

话说15 Update的包好大7个G左右,安装下来大概有40个G左右,不过VS15用着还是挺有新鲜感的,还有很多新的语法糖,安装后会有一个Wp的虚拟机,这个虚拟机还对硬件是有要求的,好像是硬件虚拟2级内存什么的,我记得不是太清楚了,系统还是Win10最好,调试的话有Wp真机的话更好,没有的就只能就模拟器了,不过话说,微软和Xamarinn收购以后,模拟器还是挺好用的

 

这里我给出官方下载地址 https://developer.microsoft.com/zh-cn/windows/downloads  

 

1,新建项目,C# - windows - windows Phone空白应用程序

 

页面代码很简单,就是一个Grid里面包着几个控件

 

这其实跟我们的Html页面差不多,他这个使用的是XAML语法,X:Name就是给控件取个名字,后台代码如下

private async void Button_Click(object sender, RoutedEventArgs e)        {            string cc = words.Text.Trim();            if (cc.Length==0)            {                return;            }                        string url = "http://cn.bing.com/dict/dict?q="+cc;            HttpClient client = new HttpClient();            string html= await client.GetStringAsync(url);            //MatchCollection mc = Regex.Matches(html,@"""def""([\s\S]+?)");            MatchCollection mc = Regex.Matches(html, @"""description""([\s\S]+?)>");            List
list = new List
(); list.Add(mc[0].Groups[0].Value); string txt = string.Join("\r\n",list).Substring(23); int index = txt.IndexOf('"'); string bb = txt.Remove(index); text.Text = bb; }

原理就是利用bing词典官方网站的URL Post请求,然后用HttpClient来接收界面,然后进行页面解析,用正则表达式取得翻译的那一部分,然后给Label控件赋值,其实并不是很难,就是这个正则的地方有点棘手,这个其实也可以做成网络爬虫的功能。

 

在这里,再说一下,Uwp应用和普通应用有什么区别,我们分别新建Wp8.1的项目和Windows 通用应用UWP 

 

 

WP8.1就是一个项目没有什么好说的,UWP就体现出不一样了,他是有两个项目和一个Shared共享文件组成的,公用的就都放在Shared,这就是他们之间最大的区别。

 

另外,最近模仿新浪微博,做了个CC微博,网址  

 

转载于:https://www.cnblogs.com/myshowtime/p/5455668.html

你可能感兴趣的文章
几个smarty小技巧
查看>>
Cocos2d-x3.2 Grid3D网格动作
查看>>
Java (for循环综合应用)
查看>>
NodeJs——(10)REST风格的路由规则
查看>>
软件可扩展性:来自星巴克的经验
查看>>
Java Cache系列之Guava Cache实现详解
查看>>
深入Log4J源码之LoggerRepository和Configurator
查看>>
System V 消息队列—复用消息
查看>>
vi常用快捷键
查看>>
Code Jam 2010 Round 1A Problem A
查看>>
C语言柔性数组
查看>>
iOS学习之flappyBird游戏的实现
查看>>
Cocos2D v2.0至v3.x简洁转换指南(五)
查看>>
springMVC4(8)模型数据绑定全面分析
查看>>
设计模式 - 适配器
查看>>
CSS之可折叠导航
查看>>
淘宝美工设计师细说何为天猫透明背景
查看>>
【B/S学习总结】我的第100篇CSDN博客
查看>>
[Hadoop]chukwa与ganglia的区别
查看>>
数据挖掘工具分析北京房价 (一) 数据爬取采集
查看>>