共用方式為


Windows Forms 設計工具錯誤頁面

如果 Windows Forms 設計工具因程式碼、協力廠商元件或其他地方的錯誤而無法載入,您會看到錯誤頁面,而不是設計工具。 這個錯誤頁面不一定表示設計工具中的 Bug。 Bug 可能位於名為 < your-form-name > 的程式碼後置頁面中。Designer.cs。 錯誤會出現在可折迭的黃色長條中,並顯示連結以跳至字碼頁中錯誤的位置。

Windows Forms Designer error page

您可以按一下 [忽略] 和 [繼續 ],選擇忽略錯誤並繼續載入設計工具。 此動作可能會導致非預期的行為,例如控制項可能不會出現在設計介面上。

此錯誤的實例

展開黃色誤差列時,會列出錯誤的每個實例。 許多錯誤類型包含下列格式的確切位置: [專案名稱] [表單名稱] 行:[行號] 資料行: [欄號]。 如果呼叫堆疊與錯誤相關聯,您可以按一下 [顯示呼叫堆疊 ] 連結來查看它。 檢查呼叫堆疊可進一步協助您解決錯誤。

Windows Forms Designer expanded error

注意

  • 針對 Visual Basic 應用程式,設計階段錯誤頁面不會顯示多個錯誤,但可能會顯示相同錯誤的多個實例。
  • 針對 C++ 應用程式,錯誤沒有程式碼位置連結。

此錯誤的說明

如果錯誤的說明主題可用,請按一下 MSDN 說明 連結,直接流覽至說明頁面。

此錯誤的相關論壇文章

按一下 [ 搜尋 MSDN 論壇] 以取得與此錯誤 連結相關的文章,以流覽至 Microsoft 開發人員網路論壇。 您可能想要特別搜尋 Windows Forms 設計工具 Windows Forms 論壇。

設計階段錯誤

本節列出您可能會遇到的一些錯誤。

' < identifier name > ' 不是有效的識別碼

此錯誤表示欄位、方法、事件或物件的名稱不正確。

' < name > ' 已存在於 ' < project name > ' 中

錯誤訊息:「' < name' 已存在於 ' < project name >> '中。 請輸入唯一的名稱。」

您已為已存在於專案中的繼承表單指定名稱。 若要更正此錯誤,請為繼承的表單指定唯一的名稱。

' < 工具箱索引標籤名稱 > ' 不是工具箱類別

協力廠商設計工具嘗試存取 [工具箱] 上不存在的索引標籤。 請連絡元件廠商。

未安裝要求的語言剖析器

錯誤訊息:「未安裝要求的語言剖析器。 語言剖析器名稱為 ' {0} '。

Visual Studio 嘗試載入已註冊檔案類型但無法註冊的設計工具。 這很可能是因為安裝期間發生錯誤。 請連絡您用於修正的語言廠商。

遺失產生和剖析原始程式碼所需的服務

這是協力廠商元件的問題。 請連絡元件廠商。

嘗試建立 ' < object name > ' 實例時發生例外狀況

錯誤訊息:「嘗試建立 ' < object name > ' 實例時發生例外狀況。 例外狀況為「 < 例外狀況字串 > 」。

協力廠商設計工具要求 Visual Studio 建立物件,但物件引發錯誤。 請連絡元件廠商。

另一個編輯器在不相容模式中開啟 「 < 檔案名稱 > 」

錯誤訊息:「另一個編輯器在不相容模式中開啟 「 < 檔案名稱 > 」。 請關閉編輯器,然後再操作一次。

如果您嘗試開啟已在另一個編輯器中開啟的檔案,就會發生此錯誤。 已開啟檔案的編輯器隨即顯示。 若要更正此錯誤,請關閉開啟檔案的編輯器,然後再試一次。

另一個編輯器已對「 < 檔案名稱 > 」進行變更

關閉並重新開啟設計工具,讓變更生效。 一般而言,Visual Studio 會在進行變更之後自動重載設計工具。 不過,其他設計工具,例如協力廠商元件設計工具,可能不支援重載行為。 在此情況下,Visual Studio 會提示您手動關閉並重新開啟設計工具。

另一個編輯器在不相容模式中開啟檔案

錯誤訊息:「另一個編輯器以不相容模式開啟檔案。 請關閉編輯器,然後再操作一次。

此訊息類似于「另一個編輯器在不相容模式中開啟 ' < document name > '」,但 Visual Studio 無法判斷檔案名。 若要更正此錯誤,請關閉開啟檔案的編輯器,然後再試一次。

陣列排名 ' < rank in array > ' 太高

Visual Studio 僅支援設計工具剖析的程式碼區塊中的單一維度陣列。 多維度陣列在此區域之外有效。

無法開啟元件 ' < assembly name > '

錯誤訊息:「無法開啟元件 ' < assembly name > '。 確認檔案仍然存在。」

當您嘗試開啟無法開啟的檔案時,就會發生此錯誤訊息。 確認檔案存在且為有效的元件。

不正確的專案類型。 此序列化程式預期類型為 ' < type name > ' 的專案

這是協力廠商元件的問題。 請連絡元件廠商。

目前無法存取 Visual Studio 工具箱

Visual Studio 呼叫無法使用的工具箱。 如果您看到此錯誤,請使用回報問題來記錄 問題

無法將事件處理常式系結至 ' < event name > ' 事件,因為它是唯讀的

當您嘗試將事件連接到繼承自基類的控制項時,通常會發生此錯誤。 如果控制項的成員變數是私用的,Visual Studio 就無法將事件連接到 方法。 私下繼承的控制項不能有系結至這些控制項的其他事件。

無法為要求元件建立方法名稱,因為它不是設計容器的成員

Visual Studio 已嘗試將事件處理常式新增至設計工具中沒有成員變數的元件。 請連絡元件廠商。

無法命名物件 ' < name > ',因為它已經命名為 ' < name > '

這是 Visual Studio 序列化程式的內部錯誤。 它表示序列化程式嘗試為物件命名兩次,但不受支援。 如果您看到此錯誤,請使用回報問題來記錄 問題

無法移除或終結繼承的元件 ' < component name > '

繼承的控制項屬於其繼承類別的擁有權。 繼承控制項的變更必須在控制項的來源類別中進行。 因此,您無法重新命名或終結它。

類別 ' < 工具箱索引標籤名稱' 沒有類別 ' < class name >> ' 的工具

設計工具嘗試參考特定 [工具箱] 索引標籤上的類別,但類別不存在。 請連絡元件廠商。

類別 ' < class name > ' 沒有相符的建構函式

協力廠商設計工具已要求 Visual Studio 在不存在的建構函式中建立具有特定參數的物件。 請連絡元件廠商。

屬性 ' < property name > ' 的程式碼產生失敗

這是錯誤的泛型包裝函式。 此訊息隨附的錯誤字串會提供有關錯誤訊息的更多詳細資料,並提供更具體說明主題的連結。 若要更正此錯誤,請解決附加至此錯誤之錯誤訊息中指定的錯誤。

元件 ' < component name > ' 在其建構函式中未呼叫 Container.Add()

這是您剛載入或放置在表單上的元件中發生錯誤。 它表示元件未將本身新增至其容器控制項(無論是另一個控制項還是表單)。 設計工具會繼續運作,但執行時間元件可能有問題。

若要更正錯誤,請連絡元件廠商。 或者,如果是您所建立的元件,請在元件的建構函式中呼叫 IContainer.Add 方法。

元件名稱不可以是空的

當您嘗試將元件重新命名為空值時,就會發生此錯誤。

無法存取變數 ' < variable name > ',因為它尚未初始化

此錯誤可能會因為兩種情況而發生。 協力廠商元件廠商有其分散式控制項或元件的問題,或您撰寫的程式碼在元件之間具有遞迴相依性。

若要更正此錯誤,請確定您的程式碼沒有遞迴相依性。 如果沒有這類問題,請記下錯誤訊息的確切文字,並連絡元件廠商。

找不到類型 ' < type name > '

錯誤訊息:「找不到類型 ' < type name > '。 請確定參考包含此類型的元件。 如果此類型是您開發專案的一部分,請確定已成功建置專案。

因為找不到參考,因此發生此錯誤。 請確定已參考錯誤訊息中所指出的類型,而且也會參考類型所需的任何元件。 通常,問題在於解決方案中的控制項尚未建置。 若要建置,請從 [建置] 功能表選取 [建 置方案 ]。 否則,如果已經建置控制項,請從方案總管中 [參考 ] 或 [相依性 ] 資料夾的 右鍵功能表中手動新增參考。

無法載入類型 ' < type name > '

錯誤訊息:「無法載入類型 ' < type name > '。 請確定包含此類型的元件已新增至專案參考。」

Visual Studio 嘗試連接事件處理方法,而且找不到方法的一或多個參數類型。 這通常是由遺漏的參考所造成。 若要更正此錯誤,請將包含型別的參考新增至專案,然後再試一次。

找不到繼承元件的專案專案範本

Visual Studio 中繼承表單的範本無法使用。 如果您看到此錯誤,請使用回報問題來記錄 問題

委派類別 ' < class name > ' 沒有叫用方法。 此類別是否為委派

Visual Studio 已嘗試建立事件處理常式,但事件種類發生錯誤。 如果事件是由不符合 CLS 規範的語言所建立,就會發生這種情況。 請連絡元件廠商。

成員 ' < member name > ' 的重複宣告

之所以發生此錯誤,是因為成員變數已宣告兩次(例如,名為 Button1 的兩個控制項會在程式碼中宣告)。 名稱在繼承的表單中必須是唯一的。 此外,名稱不能只因大小寫而不同。

從資源檔讀取文化特性 ' < culture name > ' 的資源時發生錯誤

如果專案中有錯誤的 .resx 檔案,就可能發生此錯誤。

若要更正此錯誤:

  1. 按一下 方案總管 中的 [ 顯示所有檔案 ] 按鈕,即可檢視與解決方案相關聯的 .resx 檔案。
  2. 以滑鼠右鍵按一下 .resx 檔案並選擇 [開啟 ],以在 XML 編輯器中載入 .resx 檔案。
  3. 手動編輯 .resx 檔案以解決錯誤。

從資源檔讀取預設文化特性 ' < culture name > ' 的資源時發生錯誤

如果專案中的預設文化特性中有錯誤的 .resx 檔案,就會發生此錯誤。

若要更正此錯誤:

  1. 按一下 方案總管 中的 [ 顯示所有檔案 ] 按鈕,即可檢視與解決方案相關聯的 .resx 檔案。
  2. 以滑鼠右鍵按一下 .resx 檔案並選擇 [開啟 ],以在 XML 編輯器中載入 .resx 檔案。
  3. 手動編輯 .resx 檔案以解決錯誤。

無法剖析方法 ' < method name > '

錯誤訊息:「無法剖析方法 ' < method name > '。 剖析器回報下列錯誤:' < error string > '。 請查看 [工作清單] 中是否有潛在錯誤。」

這是剖析期間所發生問題的一般錯誤訊息。 這些錯誤通常是因為語法錯誤所造成。 如需與錯誤相關的特定訊息,請參閱工作清單。

不正確元件名稱:' < 元件名稱 > '

您已嘗試將元件重新命名為該語言的無效值。 若要更正此錯誤,請將元件命名為 ,使其符合該語言的命名規則。

類型 ' < class name > ' 是由相同檔案中的數個部分類別所組成

當您使用 partial 關鍵字在多個檔案中定義類別時,每個檔案中只能有一個部分定義。

若要更正此錯誤,請從 檔案中移除類別的其中一個部分定義。

找不到元件 ' < assembly name > '

錯誤訊息:「找不到元件 ' < assembly name > '。 請確定已參考元件。 如果元件是目前開發專案的一部分,請確定已建置專案。

此錯誤類似于「找不到類型 ' < type name > '」,但此錯誤通常是因為中繼資料屬性而發生。 若要更正此錯誤,請檢查已參考屬性所使用的所有元件。

元件名稱 ' < assembly name > ' 無效

元件已要求特定元件,但元件所提供的名稱不是有效的元件名稱。 請連絡元件廠商。

無法設計基類 ' < class name > '

Visual Studio 已載入 類別,但無法設計 類別,因為 類別的實作器未提供設計工具。 如果類別支援設計工具,請確定沒有任何問題會導致在設計工具中顯示它的問題,例如編譯器錯誤。 此外,請確定類別的所有參考都正確,且所有類別名稱都已正確拼字。 否則,如果類別無法設計,請在 [程式碼] 檢視中編輯它。

無法載入基類 ' < class name > '

類別不會在專案中參考,因此 Visual Studio 無法載入它。 若要更正此錯誤,請在專案中新增 類別的參考,然後關閉並重新開啟 Windows Forms 設計工具視窗。

類別 ' < class name > ' 無法在此版本的 Visual Studio 中設計

此控制項或元件的設計工具不支援與 Visual Studio 相同的類型。 請連絡元件廠商。

類別名稱不是此語言的有效識別碼

使用者所建立的原始程式碼具有對所使用語言不正確類別名稱。 若要更正此錯誤,請將類別命名為 ,使其符合語言需求。

無法新增元件,因為它包含 ' < reference name > ' 的迴圈參考

您無法將控制項或元件新增至本身。 另一個可能發生這種情況的情況是,如果表單的 InitializeComponent 方法中有程式碼(例如 Form1)會建立另一個 Form1 實例。

目前無法修改設計工具

當編輯器中的檔案標示為唯讀時,就會發生此錯誤。 確定檔案未標示為唯讀,且應用程式未執行。

無法顯示此檔案的設計工具,因為無法設計其中任何類別

當 Visual Studio 找不到符合設計工具需求的基類時,就會發生此錯誤。 表單和控制項必須衍生自支援設計工具的基類。 如果您衍生自繼承的表單或控制項,請確定專案已建置。

未安裝基類 ' < class name > ' 的設計工具

Visual Studio 無法載入 類別的設計工具。 如果您看到此錯誤,請使用回報問題來記錄 問題

設計工具必須建立類型為 ' < type name > ' 的實例,但無法因為類型宣告為抽象

之所以發生此錯誤,是因為傳遞至設計工具的物件基類是 抽象 的,這是不允許的。

無法在設計工具中載入檔案

這個檔案的基類不支援任何設計工具。 因應措施是使用程式碼檢視來處理檔案。 以滑鼠右鍵按一下方案總管中的檔案,然後選擇 [ 檢視程式碼 ]。

此檔案的語言不支援必要的程式碼剖析和產生服務

錯誤訊息:「此檔案的語言不支援必要的程式碼剖析和產生服務。 請確定您開啟的檔案是專案的成員,然後再次嘗試開啟檔案。

此錯誤很可能是因為開啟不支援設計工具之專案中的檔案所造成。

語言剖析器類別 ' < class name > ' 未正確實作

錯誤訊息:「語言剖析器類別 ' < class name > ' 未正確實作。 請連絡廠商以取得更新的剖析器模組。」

使用中的語言註冊了未衍生自正確基類的設計工具類別。 請連絡您所使用的語言廠商。

另一個物件已經使用名稱 ' < name > '

這是 Visual Studio 序列化程式的內部錯誤。 如果您看到此錯誤,請使用回報問題來記錄 問題

物件 ' < object name > ' 不會實作 IComponent 介面

Visual Studio 嘗試建立元件,但建立的物件不會實作 IComponent 介面。 請連絡元件廠商以取得修正。

屬性 ' < property name > ' 的物件 ' < object name > ' 傳回 Null,但不允許這樣做

有一些 .NET 屬性應該一律傳回 物件。 例如, 表單的 Controls 集合應該一律會傳回 物件,即使其中沒有任何控制項也一樣。

若要更正此錯誤,請確定錯誤中指定的屬性不是 Null。

序列化資料物件不是適當的類型

序列化程式所提供的資料物件不是符合目前序列化程式之型別的實例。 請連絡元件廠商。

需要服務 ' < service name > ',但找不到

錯誤訊息:「需要服務 ' < service name > ',但找不到。 您的 Visual Studio 安裝可能會發生問題。

Visual Studio 所需的服務無法使用。 如果您嘗試載入不支援該設計工具的專案,請使用程式碼編輯器進行所需的變更。 否則,如果您看到此錯誤,請使用回報問題來記錄 問題

服務實例必須衍生自 或實作 ' < interface name > '

此錯誤表示元件或元件設計工具已呼叫 AddService 方法,此方法需要介面和物件,但指定的物件不會實作指定的介面。 請連絡元件廠商。

無法修改程式碼視窗中的文字

錯誤訊息:「無法修改程式碼視窗中的文字。 檢查檔案不是唯讀的,而且有足夠的磁碟空間。

當 Visual Studio 因磁碟空間或記憶體問題而無法編輯檔案,或檔案標示為唯讀時,就會發生此錯誤。

Toolbox 列舉值物件只支援一次擷取一個專案

如果您看到此錯誤,如果您看到此錯誤,請使用回報問題來記錄問題

無法從工具箱擷取 ' < component name > ' 的工具箱專案

錯誤訊息:「無法從 [工具箱] 擷取 ' < component name > ' 的工具箱專案。 請確定已正確安裝包含 [工具箱] 專案的元件。 [工具箱] 專案引發下列錯誤: < 錯誤字串 > 。」

有問題的元件在 Visual Studio 存取時擲回例外狀況。 請連絡元件廠商。

無法從工具箱擷取 ' < Toolbox 專案名稱 > ' 的工具箱專案

錯誤訊息:「無法從工具箱擷取 ' < 工具箱專案名稱 > '的工具箱專案。 請嘗試從 [工具箱] 中移除專案,並將它新增回去。

如果 [工具箱] 專案內的資料已損毀,或元件版本已變更,就會發生此錯誤。 請嘗試從 [工具箱] 中移除專案,然後重新新增它。

找不到類型 ' < type name > '

錯誤訊息:「找不到類型 ' < type name > '。 請確定參考包含型別的元件。 如果元件是目前開發專案的一部分,請確定已建置專案。

載入設計工具時,Visual Studio 找不到類型。 請確定參考包含型別的元件。 如果元件是目前開發專案的一部分,請確定已建置專案。

類型解析服務只能從主要應用程式執行緒呼叫

Visual Studio 嘗試從錯誤的執行緒存取必要的資源。 當用來建立設計工具的程式碼從主要應用程式執行緒以外的執行緒呼叫類型解析服務時,就會顯示此錯誤。 若要更正此錯誤,請從正確的執行緒呼叫服務,或連絡元件廠商。

變數 ' < variable name > ' 未宣告或從未指派

原始程式碼具有未宣告或指派之變數的參考,例如 Button1 。 如果尚未指派變數,此訊息會顯示為警告,而不是錯誤。

功能表命令 ' < menu command name > ' 已經有命令處理常式

如果協力廠商設計工具將已經有處理常式的命令新增至命令資料表,就會發生此錯誤。 請連絡元件廠商。

已經有一個名為 ' < component name > ' 的元件

錯誤訊息:「已經有名為 ' < component name > ' 的元件。 元件必須具有唯一的名稱,而且名稱不得區分大小寫。 名稱也無法與繼承類別中任何元件的名稱衝突。」

當屬性視窗中元件的名稱有所變更時,就會發生此錯誤訊息。 若要更正此錯誤,請確定所有元件名稱都是唯一的、不區分大小寫,也不會與繼承類別中任何元件的名稱衝突。

已經有已針對格式為 ' < format name > ' 註冊的工具箱專案建立者

協力廠商元件對 [工具箱] 索引標籤上的專案進行回呼,但該專案已包含回呼。 請連絡元件廠商。

此語言引擎不支援載入設計工具的 CodeModel

此訊息類似于「此檔案的語言不支援必要的程式碼剖析和產生服務」,但此訊息涉及內部註冊問題。 如果您看到此錯誤,如果您看到此錯誤,請使用回報問題來記錄問題

類型 ' < type name' 沒有具有類型 ' < parameter type name >> ' 參數的建構函式

Visual Studio 找不到 具有相符參數的建構函式 。 這可能是提供建構函式與必要類型以外的類型的結果。 例如,Point 建構函式可能會採用兩個 整數。 如果您提供的浮點數,就會引發此錯誤。

若要更正此錯誤,請使用不同的建構函式,或明確轉換參數類型,使其符合建構函式所提供的類型。

無法將參考 ' < reference name > ' 新增至目前的應用程式

錯誤訊息:「無法將參考 ' < reference name > ' 新增至目前的應用程式。 請檢查尚未參考不同的 ' < reference name > ' 版本。」

Visual Studio 無法新增參考。 若要更正此錯誤,請檢查尚未參考不同的參考版本。

無法取出目前的檔案

錯誤訊息:「無法取出目前的檔案。 檔案可能已鎖定,或者您可能需要手動取出檔案。」

當您將目前簽入的檔案變更為原始程式碼控制項時,就會發生此錯誤。 Visual Studio 通常會顯示 [檔案簽出] 對話方塊,讓使用者可以取出檔案。 這次,檔案並未取出,可能是因為簽出期間發生合併衝突。 若要更正此錯誤,請確定檔案未鎖定,然後嘗試手動取出檔案。

找不到名為 [ < 選項] 對話方塊索引標籤名稱 > 的頁面

當元件設計工具使用不存在的名稱,從 [選項] 對話方塊要求存取頁面時,就會發生此錯誤。 請連絡元件廠商。

在頁面 'Options dialog box tab name' 上找不到屬性 ' < property name >> ' <

當元件設計工具從 [選項] 對話方塊要求存取頁面上的特定值,但該值不存在時,就會發生此錯誤。 請連絡元件廠商。

Visual Studio 無法開啟檔案的設計工具,因為它內的類別不會繼承自可以視覺化設計的類別

Visual Studio 已載入 類別,但無法載入該類別的設計工具。 Visual Studio 要求設計工具在檔案中使用第一個類別。 若要更正此錯誤,請移動類別程式碼,讓它是檔案中的第一個類別,然後再次載入設計工具。

Visual Studio 無法儲存或載入類型 ' < type name > ' 的實例

這是協力廠商元件的問題。 請連絡元件廠商。

Visual Studio 無法在 [設計檢視] 中開啟 [ < 檔案名稱 > ]

錯誤訊息:「Visual Studio 無法在設計檢視中開啟 ' < document name > '。 未針對檔案類型安裝剖析器。」

此錯誤表示專案的語言不支援設計工具,而且當您嘗試在 [開啟檔案] 對話方塊中開啟檔案,或從方案總管開啟檔案時,就會發生此錯誤。 請改為在 [程式碼] 檢視中編輯檔案。

Visual Studio 找不到類型 ' < type name > ' 類別的設計工具

Visual Studio 已載入 類別,但無法設計 類別。 相反地,以滑鼠右鍵按一下類別並選擇 [ 檢視程式碼],以編輯程式碼 檢視中的類別。

另請參閱