试验平台:.Net Micro Framework 模拟器
在Microsoft.SPOT.Presentation.Controls命名空间里,也就如下几个控件(姑且称为控件吧),Panel、StackPanel、Text、TextFlow、Image、ListBox、ScrollViewer 其中仅有Panel、Text、Image控件完成度相对较好,其他的实现并不完整,甚至只是一个空接口。
下面是测试代码:
using System;
using Microsoft.SPOT;
using Microsoft.SPOT.Input;
using Microsoft.SPOT.Presentation;
using Microsoft.SPOT.Presentation.Controls;
using Microsoft.SPOT.Presentation.Media;
using Microsoft.SPOT.Presentation.Shapes;
namespace MFWindow
{
public class Program : Microsoft.SPOT.Application
{
public static void Main()
{
//创建窗体
WindowsDrawing win = new WindowsDrawing();
//程序运行
new Program().Run(win);
}
internal sealed class WindowsDrawing : Window
{
public WindowsDrawing()
{
this.Width = SystemMetrics.ScreenWidth;
this.Height = SystemMetrics.ScreenHeight;
//可设置显示方向(水平,垂直)
//StackPanel panel = new StackPanel(Orientation.Vertical);
StackPanel panel = new StackPanel(Orientation.Horizontal);
//设置对象堆叠的方式
panel.HorizontalAlignment = HorizontalAlignment.Left;
panel.VerticalAlignment = VerticalAlignment.Top;
this.Child = panel;
//Text控件
Text txt = new Text(Resources.GetFont(Resources.FontResources.small), "yefan");
txt.Width = 100;
txt.Height = 30;
txt.ForeColor = Colors.Green;
panel.Children.Add(txt);
//TextFlow控件 不支持滚动条,实现还不完整
TextFlow txtf = new TextFlow();
txtf.ScrollingStyle = ScrollingStyle.LineByLine;
txtf.TextAlignment = TextAlignment.Left;
txtf.Height = 200;
txtf.Width = 50;
for (int i = 0; i < 10; i++)
{
txtf.TextRuns.Add(new TextRun("yefan123", Resources.GetFont(Resources.FontResources.small), Colors.Blue));
//注意:换行这么写,可不是/r/n
txtf.TextRuns.Add(TextRun.EndOfLine);
txtf.TextRuns.Add(new TextRun("yefan456", Resources.GetFont(Resources.FontResources.small), Colors.Red));
txtf.TextRuns.Add(TextRun.EndOfLine);
txtf.TextRuns.Add(new TextRun("yefan789", Resources.GetFont(Resources.FontResources.small), Colors.Green));
txtf.TextRuns.Add(TextRun.EndOfLine);
}
panel.Children.Add(txtf);
//image
Image img = new Image();
img.Bitmap = Resources.GetBitmap(Resources.BitmapResources.yfmvp);
panel.Children.Add(img);
//ListBox 仅实现了一个空接口
ListBox lst = new ListBox();
lst.Font = Resources.GetFont(Resources.FontResources.small);
lst.Items.Add(new ListBoxItem());
//panel.Children.Add(lst);
//ScrollViewer 仅实现了一个空接口
ScrollViewer sv = new ScrollViewer();
sv.Width = 30;
sv.Height = 50;
//panel.Children.Add(sv);
//sv.Child = txtf;
}
}
}
}
目前版本的MF对TCP协议栈支持也并不完善(对串口也谈不上完善,毕竟不支持奇偶校验、停止位设置),Digi的以太网口是加入了自己的处理方案,明年二月份微软将要发布的MF V3.0版,就已经完全支持TCP了,到时候MF最理想的应用也许就是通信转换了。
从本篇内容中可以看出,微软MF之旅尚在出发点不远的地方,MF研发人员任重而道远啊!
分享到:
相关推荐
The Microsoft .NET Micro Framework is a small and efficient .NET runtime environment used to run managed code on devices that are too small and resource constrained for Windows CE and the Compact ...
《玩转.NET Micro Framework移植-基于STM32F10x处理器》源程序
.NET Micro Framework 电子书
.net micro framework关于文件操作的例子,非常详细。还包括了点击等东西
expert .net micro frameworkexpert .net micro frameworkexpert .net micro framework
.NET Micro Framework自动化测试工具,需.NET Micro Framework3.0和.NET Micro Framework Test Kit支持...
Microsoft .NET Micro Framework 2.5 SDK。 这个我暂时没用,权当放在这里存放,需要的,自己动手。
近来有些刚入门的用户,不太了解.NET Micro Framework开发板的使用,所以写了这篇文档,以期缩短用户对开发板的熟悉时间。
micro framework 4.0 SDK,最新开发工具包
这是我自己改造的.Net Micro Framework模拟器,比windows自带的漂亮多了。 覆盖该目录下的同名文件(路径以实际开发包安装位置为准)即可。 C:\Program Files\Microsoft .NET Micro Framework\v2.0.3036\Tools 支持...
.NET Micro Framework 电子书
http://item.taobao.com/item.htm?id=7117999726 .NET Micro Framework开发板的Key文件的部署说明。
.NET Micro Framework开发板原理图(红牛开发板)
.NET Micro Framework开发板使用手册(红牛开发板)
如何顺利编译.Net Micro Framework Porting Kit 4.1 安装路径不能有空格
《玩转.NET Micro Framework 移植-基于STM32F10x处理器》一书所有的源代码。其它更多的资源可以访问我的blog:http://blog.csdn.net/norains 谢谢!
.NET Micro Framework for Windows 7(X64) USB驱动安装说明,包含相应的驱动程序
注:比上一个模拟器多了支持方向键控制 这是我自己改造的.Net Micro Framework模拟器,比windows自带的漂亮多了。 覆盖该目录下的同名文件(路径以实际开发包安装位置为准)即可。 C:\Program Files\...
GHI .NET Micro Framework培训教材