在VS 2008中,事件选项卡会随机出现和消失。

7
我知道这只是个小麻烦...但它仍然是一个烦恼,而且让我感到困惑...大约三个月前,我正在使用VS 2008,当我进入"属性"选项卡时,在设计模式下会有一个小闪电符号来表示事件。然后它突然消失了...大约一周后,我发现如果我没有把属性选项卡“固定”,那么事件选项就会出现,但在固定之后就不会出现。

今天早上,这一切都还正常。现在我要添加一个事件,突然间闪电符号不见了。我没有看到任何禁用选项,也没有做过任何重新配置,它就这样消失了...即使我没有重新启动VS。而且我已经尝试重新启动VS,但没有效果...

我错过了什么?这是VS 2008中的一个非常烦人的错误(它已经更新了),还是我错过了某些配置?

更新 我在这个问题上附加了一个赏金,想看看能否得到更有帮助的答案。简单地说,似乎事件选项卡会在一个月或两个月的周期内出现和消失。这不是一个上下文问题。例如,我的光标在一个按钮内,我可以编辑所有按钮的属性,但事件选项卡没有出现...更令人困惑的是,几周前这还能够正常工作。

替代文本 http://img714.imageshack.us/img714/6301/eventsx.png


1
我很想得到那丰厚的赏金! - JohnB
@JohnB 那你就帮我想想办法吧 :) - Earlz
6个回答

6
事件选项卡由设计器驱动。如果设计器处于活动状态,或者源视图处于活动状态但设计器已同步,则应该会看到事件选项卡。一旦更改了源视图内容,设计器就会失去同步,不再显示事件选项卡。您可以通过切换到设计器再返回来让事件选项卡重新显示。
您可以通过查看属性网格中的类型信息来确定设计器是否已同步。如果它已同步,您将看到完整的.NET类名(例如,在Button上,您将看到像Button1 System.Web.UI.WebControls.Button这样的内容),如果它未同步,则只会看到一个XML元素(例如Button1 <BUTTON>)。此外,元素可用属性列表以及它们在属性网格中的排列方式将根据它是否使用类型属性或模式属性而发生变化。

1
这就是解决方法。每次切换到设计模式然后返回源代码视图都能解决这个问题。感谢并祝贺你的+425分 :) - Earlz
他说重启Visual Studio没有解决问题。重启VS将会重新同步源代码视图... - BlueRaja - Danny Pflughoeft
1
@BlueRaja - 直到设计师首次加载,它才会被同步,因此重新启动 VS 然后打开 HTML 编辑器仍然不会显示事件选项卡 :) - Jimmy
以下是一篇更详细解释该行为的文章:点击这里 - Sam

1

Visual Studio 2008存在一个已知的问题,即在 asp:Table 控件内部无法显示 ASP.Net 控件的事件按钮。微软提供了以下解决方法:

使用常规的 <table><tr><td> 标签,并将其标记为 runat="server"。这将使您能够在代码中修改它们,设计师将为您提供按钮属性和事件的访问权限。


如果您遇到了这种情况,请尝试以下故障排除步骤:

  1. 尝试删除 .user 和 .suo 文件 (位于解决方案所在的同一文件夹中)

  2. 如果这并没有帮助:这是否发生在其他项目/解决方案中,还是只有一个?在使用类似设置的不同计算机上加载相同的项目/解决方案时是否会发生此问题?

    如果它总是在您的计算机上发生而不是其他计算机上,则可能是某个重要文件损坏了 - 尝试重新安装 VS(也许甚至是 Windows)。

    如果它在其他计算机上的同一解决方案中发生,但在不同的解决方案中没有发生,则可能是解决方案/项目/设计文件损坏了。缩小范围并重新创建受影响的文件 (它也可能是类似于上面的错误,这种情况下您只能提交错误报告并等待...)

    如果两者都不是或都是...那么就是出了点大问题!


嗯...也许是表格位出了问题,这可能解释了为什么它会不定期地出现。我已经尝试删除“.user”等文件,并且它在不同的项目上也发生过,所以那不是原因。我之前也尝试重新安装VS。虽然除了这个问题外,我的Windows Vista运行得非常好,但我真的没有重新安装Windows的位置。 - Earlz
好的,我刚刚测试了一下,发现在没有定义表格的情况下,标记中会出现这种情况。 - Earlz
@Earlz:你能在其他电脑上重现这个问题吗?如果可以,你能发布一下重现步骤(或者发布一个出现该问题的小程序)吗? - BlueRaja - Danny Pflughoeft
我身边没有其他安装了Visual Studio的电脑,我无法主动使用它们进行此操作。 - Earlz

1

你的 属性按钮 在哪里?你的也没有这个。它们可能有关联。为什么你有 <BUTTON>?我的看起来不太像你的。

这是我的属性窗格(VS 2008):

alt text http://img62.imageshack.us/img62/2365/whereisyourpropertiesbu.png

编辑:

你试过从 文件->窗口 菜单中重置菜单布局吗:

alt text http://img25.imageshack.us/img25/7241/resetwindowlayout.png

在我的电脑上,当我处于 类图 模式时,我没有得到 属性按钮事件按钮

alt text http://img811.imageshack.us/img811/1455/classdiagrammode.png

我只能在设计模式下看到属性按钮事件按钮

alt text http://img294.imageshack.us/img294/8011/designmode.png

还有这个右键菜单:

alt text http://img17.imageshack.us/img17/3867/rightclickmenu.png


我之前已经尝试过重置窗口布局,但没有帮助。而且很奇怪的是它显示 <BUTTON> 而不是实际的类名。 - Earlz

1
这可能听起来很疯狂,但如果您正在使用 Microsoft 无线鼠标,请尝试拔出 USB 接收器... 窗口会重新出现吗?然后您现在可以重新插入它,除非您重启 VS,否则一切正常。

我也遇到过这个问题。我的属性窗口也消失了。

这让我发疯了,花了我几个月的时间才解决。至于解决方法,我没有找到一个永久的方法。不过有传言说这是针对 Microsoft 鼠标(还有键盘?也许)的特定问题。


奇怪,我几乎确定那就是问题所在。你试过拔掉鼠标再插上吗? - 4imble

0
我认为闪电图标是有上下文的 - 如果你没有选择与事件相关的内容,你就看不到它。

我可以选择像下拉框或其他我知道有事件的东西,但它没有出现。 - Earlz

0

我不知道为什么会出现这个问题,但解决方案只需2个点击即可。

没有看到事件选项卡的原因是下拉列表中有2个多个条目(在您的图片中用问号标记)。其中一个来自ASP:net按钮类型,另一个如图片所示,只是按钮。

解决方案是从下拉列表中选择其他btnLocate按钮。 在那里,您可以完全访问事件。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接