2011-11-29 37 views
2

我在Visual Studio 2010 C#Express Edition中遇到一個奇怪的問題:當它彈出來向我顯示建議列表時,該列表缺少有效選項。例如,假設我想向控件添加一個「KeyDown」事件處理程序,我開始輸入「someControl.K<Ctrl+Space>」,但彈出窗口沒有列出KeyDown事件;實際上,它不包含任何東西以K開頭(不是KeyPress或KeyUp)。VS 2010 C#Express - Intellisense不顯示所有選項

這並不是很糟糕,因爲只需手動輸入「KeyDown」就不會殺死我,但它非常刺激,特別是當我處理其成員不熟悉的對象時。

畢竟,IntelliSense的用途之一是讓您快速瞭解什麼方法/屬性/字段等。該對象必須提供 - 但是如果它遺漏了其中一些半隨機的,這一點是沒有意義的。

(通過半隨機我的意思是,雖然似乎沒有任何可識別的模式,但至少它是一致的,因爲它顯然總是與丟失的一樣。)

有沒有人有任何想法可能會導致這種現象?損壞的IntelliSense緩存?有沒有辦法清除緩存並強制重建?

+1

是它以前的工作,或者您是剛剛安裝Express嗎? –

回答

1

你可以嘗試刪除。自衛隊和解決方案的文件名爲.suo(關閉它後),然後重新打開它。

還要確保所有的語句完成選項被選中並且'隱藏高級成員'被取消選中(見圖片)。

enter image description here

+0

這是關於C#,而不是C++。 –

+0

@HansPassant:對,所以沒有sdf文件。其餘的信息應該仍然有效。 –

+0

我不完全知道它到底是什麼,但經過多次嘗試刪除.suo文件和臨時文件夾的內容之類的東西,以及重新啓動Visual Studio,它現在似乎再次工作。讓我們看看多久... –