龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

实例.net CF组件编程之Tcp的小程序第1篇

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
下面使用.NET开发做了个Tcp的小程序,用于手机和台式机之间的局域网数据传,主要是要通过编写通讯类基础代码来实现。 首先,如何创建一个组件项目,我就不多说了,只需记得我们

下面使用.NET开发做了个Tcp的小程序,用于手机和台式机之间的局域网数据传,主要是要通过编写通讯类基础代码来实现。

  首先,如何创建一个组件项目,我就不多说了,只需记得我们要用在.net cf下,应该从智能设备项目中开始创建类库即可!然后,将我们的类继承:Component,即可,当然,记得引用:using System.ComponentModel;
  其次,我们再为组件添加属性时,那些PropertyAttribute标签,形如:[Category("Customer's Details"), Description("Customer's Sex")] 的东东,在.net cf中已经不复存在,那么如何让组件的属性(公开的),在设计时可见呢,如下图:
属性

  经过同仁指点,大家可以到这里看到解决办法,经过我的实验,果真通过:http://www.cnblogs.com/OSCAR_NJU/archive/2008/04/02/1134231.html,这就是为移动组件添加属性描述的方法。可谓经典啊!
  说了这么多,可能已经有朋友,照着开篇的连接进入Mapserver的文章,并动手实验了一把,我也比较喜欢自己动手的,所以,下面我们就一步一步来,写一个基础的.net cf组件吧,组件的功能是Tcp连接测试(为了方便才使用这个话题,你可以换成你自己的东东呢)

动手部分:
  首先,还是新建一个智能设备项目,解决方案名称自定,然后选择WM5平台,用.net cf 2.0框架,项目类型请使用类库,名称就叫做“TCPComponent"吧,然后,修改默认的Class1.cs名称为:TCPHelper.cs,之后,在此文件的代码中,添加引用,以及让类继承Component。

using System.ComponentModel;
public class TCPHelper : Component
此时,你应该能发现,TcpHelper.cs的图标变成组件的样子了吧,反正不是原来的绿色的鸟~。好的,然后,让我们为组件添加公开的属性吧,主要有两个,第一个是远程主机的ip地址,在设计时以及运行时都能设置,其次是连接端口,我们在类的结构中申明这两个属性:

申明属性:

Code [http://www.xueit.com]
private String host;
private Int32 port;

#region 主机地址
/// <summary>
/// 远程主机地址
/// </summary>
public string HostName
{
    get
    {
        return host;
    }
    set
    {
        if (value == null || value.Trim().Length == 0)
        {
            throw new ArgumentException("Invalid Host name.");
        }
        host = value;
    }
}
#endregion

#region 端口号
/// <summary>
/// 通讯使用的端口号
/// </summary>
public int Port
{
    get
    {
        return port;
    }
    set
    {
        if (value == 0 || value > 65535)
        {
            throw new ArgumentException("Invalid port Number.");
        }
        port = value;
    }
}
#endregion

ok,编译一下,应该能通过了吧,然后在解决方案中,添加一个WM5的应用程序项目,应该能在工具箱上,看到TCPHelper这个带齿轮的组件,如果看不到,请右键单击工具箱,选择项——》然后手动添加组件的dll文件。


精彩图集

赞助商链接