2012-03-27 40 views
4

在Locals窗口或懸停在對象上時,我想查看層次結構中同一級別的對象的所有屬性。我可以在「本地」窗口中展平對象層次結構嗎?

我得到這樣的事情:

[-] sub 
    [-] base 
     BaseId 
    SubId 

但我希望看到這樣的事情:

[-] sub 
    BaseId 
    SubId 

我想這是對的方式所有類顯示。

這與IntelliSense的不同之處在於,所有的屬性和方法都在同一級別上呈現。

我正在使用Visual Studio 2010和C#,但這適用於較舊的VS版本和其他語言。

+0

你可以用一個簡單的擴展方法做到這一點,我會接受嗎? – 2012-03-27 01:10:13

+0

如果只有我想看到的幾個班級變平,那就行了。但事實上,我希望看到一切都變平。 – OutstandingBill 2012-03-27 02:00:38

+0

AFAIK VS不支持這種開箱即用的方式,您可以使用Watch或者Immediate窗口,通過使用Reflection的簡單擴展來實現。 – 2012-03-27 02:03:35

回答

1

這就是我一直在尋找:http://msdn.microsoft.com/en-us/library/ms228992.aspx

你可能會最終需要使用類型代理,因爲它們提供了最大的靈活性。您似乎可以將它們應用於您未創建的類型。

+0

謝謝Siride。這對於單個類似乎是一個很好的解決方案我在尋找更一般的東西,比如傑里米湯普森的解決方案。 – OutstandingBill 2012-03-27 20:08:46

+0

@OutstandingBill我沒有看到傑里米湯普森的解決方案;他可能已經刪除它。 – siride 2012-03-27 21:13:29

+0

這是原始問題的第6條評論 – OutstandingBill 2012-03-28 20:16:23

相關問題