小编TKT*_*KTS的帖子

一旦将webapp添加到主屏幕,是否可以强制iphone/ipod更新apple-touch-icon?

我使用了safari的所有推荐链接和元标记创建了一个webapp,例如.

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<link rel="apple-touch-startup-image" href="/startup.png" />
<link rel="apple-touch-icon" href="/apple-touch-icon.png" /> 
<link rel="apple-touch-icon" sizes="72x72" href="/apple-touch-icon-ipad.png" /> 
<link rel="apple-touch-icon" sizes="114x114" href="/apple-touch-icon-iphone4.png" />
Run Code Online (Sandbox Code Playgroud)

但是,我的问题是如果在网络服务器上更新了startup.png或任何apple-touch-icon图像文件,看起来用户的iphone或ipod似乎不会在更新的文件保存到他们的主屏幕(我猜它是以某种方式缓存的).它可以从主屏幕中删除webapp并重新添加.但有没有办法让应用程序知道它需要刷新这些图像而不需要用户删除并重新添加它?

html iphone safari ios iphone-standalone-web-app

15
推荐指数
1
解决办法
1万
查看次数

重新创建UserControl句柄的频率是多少?

我在msdn上查找了winforms(在这里找到)的UserControl.Load事件并看到了这条警告消息:

创建UserControl的句柄时发生Load事件.在某些情况下,这可能导致Load事件多次发生.例如,加载UserControl时会发生Load事件,如果重新创建句柄,则会再次发生.(重新创建句柄的一种方法是调用RecreateHandle方法.)为了解决多次出现的Load事件,您应该在UserControl构造函数中放置任何一次初始化代码而不是Load事件处理程序.此外,您不应在Load事件处理程序中向UserControl添加数据绑定.

那么我的问题是,除了对RecreateHandle的显式调用之外,还会导致为UserControl重新创建句柄吗?在阅读本文之前,我总是把任何只应该在Load事件中发生过一次的事情.另外(从最后一句),添加数据绑定的最佳位置在哪里?如果我不打电话给RecreateHandle,这真的很重要吗?

.net events user-controls winforms

8
推荐指数
1
解决办法
834
查看次数

Control.FindForm和ContainerControl.ParentForm之间有什么区别

我想知道如果有之间的任何功能(或其他方式)的区别Control.FindFormContainerControl.ParentForm?我.ParentForm在创建自己的用户控件时一直在使用,但是有什么理由.FindForm会是更好的选择吗?从我所知道的,他们总是返回相同的形式(即用户控件所在的表单,或null).难道.ParentForm只是打电话.FindForm或者是有一个时间,其中两个可以是不同的(可能与MDI窗口)?

.net windows winforms

7
推荐指数
1
解决办法
3515
查看次数

VB.NET用于循环函数范围与块范围

给定下面的代码示例,似乎变量currOn在循环之外被提升并且仅实例化一次.例如,假设itemList第二次迭代SomeFunctionThatDoesSomeStuff返回中有三个项目true.currOn那么价值就是true.在第三次迭代中,我认为给定VB.NET是一种块范围语言,currOn它将被重新实例化并默认为false; 但是,我发现它仍然存在true,因此无论价值如何sOn,都不会在进一步的迭代中得到更新.它似乎是javascript的函数范围,其中声明currOn将在循环外拉出.谁知道这里发生了什么?

        For Each item As MyItem In itemList
            Dim currOn As Boolean
            Dim sOn As Boolean = SomeFunctionThatDoesStuff(item)
            currOn = currOn OrElse sOn

            Debug.Print(String.Format("the value of currOn is: {0}", currOn))
        Next
Run Code Online (Sandbox Code Playgroud)

作为另一个例子,显式设置currOn = false每次迭代似乎都有效,因为我预期上述工作.

            For Each item As MyItem In itemList

                Dim currOn As Boolean = False
                Dim sOn As Boolean = SomeFunctionThatDoesStuff()
                currOn = …
Run Code Online (Sandbox Code Playgroud)

vb.net scope

7
推荐指数
1
解决办法
364
查看次数