Visual Studio在扩展用户控件后阻塞在设计模式上
本文关键字:设计模式 控件 Studio 扩展 用户 Visual | 更新日期: 2023-09-27 18:17:51
我有一个项目在Visual Studio 2010(从2008转换),我已经创建了一个用户控件,像这样:
namespace Common.Controls
{
public partial class Panel_BaseMap : UserControl
{
public Panel_BaseMap()
{
//Some properties initialization here, just like = new X();
InitializeComponent();
}
private void BaseMapPanel_Load(object sender, EventArgs e) {
//Here, a new Thread is initialized and started.
}
}
}
我对此没有任何问题,它在设计模式下打开没有任何问题。但是我已经创建了一个新的UserControl扩展到第一个,像这样:
using Common.Controls;
namespace BC.controls
{
public partial class MapPanel : Panel_BaseMap
{
public MapPanel()
{
InitializeComponent();
}
}
}
嗯,就在我试图在设计模式下打开这个新控件的那一刻,Visual Studio完全被阻塞了,我不得不强迫它关闭,因为它没有响应。我尝试了很多方法,比如:
public MapPanel()
{
if (!this.DesignMode)
InitializeComponent();
}
仍然堵塞。我打开了Visual Studio的第二个实例,然后在第一个"调试->附加到进程-> devvenv"上,我在第二个实例上的Load方法和两个构造函数上设置了一个断点。结果:两个实例完全阻塞。
有谁能帮帮我吗?提前非常感谢!
好的,我找到问题了。
设计人员执行了一些代码,这些代码使应用程序崩溃。它是在一个try-catch中,在catch中,我用一个方法记录了这个错误,这个方法试图用这个来加载一个加密的文件:StartupPath"* . xml")。问题是应用程序。StartupPath不是我的应用程序路径,而是"C:'Program Files'Microsoft Visual Studio 10.0'Common7'IDE'Microsoft. data . connectionui .xml"。所以,当我试图解密它时,它抛出了另一个异常,这是用相同的方法记录的…无限循环!