我将此类和内部类作为命名空间的一部分,就像这样(只需删除并替换一些代码和命名空间声明即可:
namespace X.Y.MessageHandlers.AsxActivity
{
public class AsxActivityAliveEventMessageHandler : IHandleMessages<AsxActivityAliveEvent>
{
private const double INTERVAL = 10000;
public static bool AsxConnected { get; set; }
private static Dictionary<String, TagTimer> _connectionTimers = new Dictionary<string, TagTimer>();
public void Handle(AsxActivityAliveEvent message)
{
...
}
void timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
...
}
static void NotifyClients(AsxActivityAliveEvent message)
{
...
}
}
internal class TagTimer : Timer
{
public object Tag { get; set; }
}
}
每当我从解决方案资源管理器中双击“ AsxActivityAliveEventMessageHandler.cs”时,Visual Studio都会弹出一个我从未见过的窗口,这之前我会看到以下消息:
为了防止在加载设计器之前可能的数据丢失,必须解决以下错误:
以下是此说明:
可以设计TagTimer类,但不是文件中的第一类。Visual Studio要求设计人员使用文件中的第一类。移动类代码,使其成为文件中的第一类,然后尝试再次加载设计器。
尝试将TagTimer类从内部更改为公共,再将其更改为私有,但是错误似乎并未解决。我在这里想念什么吗?
当您双击文件时,如果文件中包含可设计的类,则VS会尝试打开设计器。您可以更改默认的打开操作,也可以将TagTimer
类移到上方AsxActivityAliveEventMessageHandler
。
另一种解决方案是不通过双击打开文件,而是通过按打开文件F7。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句