狀況
當您重新編譯為目標的 Microsoft.NET Framework 4.5.2 VB.NET 應用程式,可能會在編譯過程中收到下列錯誤訊息︰
'{Name}' 不是 「 視窗 」 的成員。
在這個訊息中,"{Name}"預留位置是子項目 System.Windows 命名空間,例如 「 表單 」 或 「 標記 」。例如,錯誤訊息可能會出現,如下所示︰
[表單] 不是 「 視窗 」 的成員。
解決方案
這個問題牽涉到.NET Framework 4.5.2 「 視窗 」 命名空間的衝突。它將會發生在程式碼中使用 Windows。{Name} 來參考 System.Windows。{Name}。若要解決這個問題,變更程式碼來完整限定命名空間,或匯入的完整命名空間以及其簡單名稱來參考其型別。例如,下列程式碼將會造成錯誤︰
Module Module1 Sub Main() Windows.Forms.MessageBox.Show("Example") End SubEnd Module
不過,下列程式碼將會成功編譯︰
Imports System.Windows.FormsModule Module1 Sub Main() MessageBox.Show("Example") End SubEnd Module
下列程式碼也將會成功編譯︰
Module Module1 Sub Main() System.Windows.Forms.MessageBox.Show("Example") End SubEnd Module