吐槽Windows Store App开发专用贴

对比.NET每一代都为开发人员带来更多的便利,切换到Windows Runtime开始Windows Store App的开发以后,常常感觉到:这TM就是个半成品!

以下吐槽开始

坑爹的ToggleButton

Store App里取消了Style.Trigger,号召开发人员用VisualStateManager,好,ToggleButton + VisualStateManager, 天坑出现了。

Checked/Intermediate state的VisualStateGroup居然是CommonStates!无论是WPF还是同样具有check/uncheck state的checkbox,所属的VisualStateGroup都是CheckSates... 可想而知,在CheckSates这个group下为ToggleButton添加Checked state的动画,无论如何都不会触发... 这货又在WPF基础上增加了CheckedPressed这个VisualState,想做个check/uncheck触发的动画,只能在这个Pressed/CheckedPressed两种状态下添加,而不是通常的Checked/Unchecked VisualState! 奇葩。

 

获取本机机器名

对比.NET下的Sytem.Environment.MachineName,Store App下需要这样做:

public string GetHostName()
{
    var hostNamesList = Windows.Networking.Connectivity.NetworkInformation
        .GetHostNames();

    foreach (var entry in hostNamesList)
    {
        if (entry.Type == Windows.Networking.HostNameType.DomainName)
        {
            return entry.CanonicalName;
        }
    }

    return null;
}

注意需要返回第一个type为DomainName的值,这个NameList里有两个entry的type都为DomainName,只有第一个是FQDN...

 

 

posted on 2014-06-16 00:06  谢绝围观  阅读(153)  评论(0)    收藏  举报

导航