如何在Microsoft .NET Compact Framework中获取当前数据连接类型(3G,Edge,Gprs)?

时间:2011-05-27 08:01:56

标签: .net compact-framework

我正在使用Microsoft .NET 3.5 Compact Framework开发移动应用程序。

我需要定期检查哪种数据连接正常(3G,Edge或Gprs)。

我可以通过.NET CF API获取此信息吗?

1 个答案:

答案 0 :(得分:2)

您可以在不定期检查的情况下执行此操作,Microsoft.WindowsMo​​bile.Status命名空间允许您订阅与设备的数据连接关联的特定属性。通过设置SystemState订阅,您可以在连接更改时分配事件:

using Microsoft.WindowsMobile.Status;

    public void OnLoad()
    {
        var connectionState = new SystemState(SystemProperty.ConnectionsCellularCount);
        connectionState.Changed += (o, s) =>
            {
                if (SystemState.CellularSystemConnectedHsdpa)
                {
                    // show 3G Icon
                }
                else if (SystemState.CellularSystemConnectedGprs)
                {
                    // show GPRS Icon
                }
                else if (SystemState.CellularSystemConnectedEdge)
                {
                    // show Edge Icon
                }
            };
    }