2012-04-08 78 views

回答

5

當您在「解決方案資源管理器」窗格中複製並粘貼表單時發生此錯誤。然後你改變一個表格的名字。 Visual Studio爲兩者提供了相同的名稱,然後當您重命名錶單時,Visual Studio會爲您進行一些重構,併爲這兩種表單重新命名Designer類(不僅適用於新版本)。

可以解決這個問題有兩種方式:

  1. 關閉微軟的Visual Studio,然後瀏覽到從外部程序(如Total Commander的。)項目文件夾。在定義了兩個表單的文件夾中,您可以看到表單的.cs和.Designer.cs文件。在文本編輯器中打開表單的.cs和.Designer.cs文件。用新名稱查找並替換原始表單名稱的每個實例。如果您重命名已重命名某些資源,請檢查原始表單的文件(如果它們只是原始表單名稱,而不是新表單名稱的任何內容)。然後保存所有文件,啓動Microsoft Visual Studio並重建您的項目。

  2. 您可以在新的.cs和.Designer.cs文件中嘗試chcek並重命名每個原始表單名稱的聲明,但嘗試禁用重構。如果你已經改名爲新的形式,對了.Designer.cs舊錶,你也許看到這一點:

    namespace YourProjectNamespace 
    { 
        partial class NewFormName 
        { .. } 
    

    您必須重命名NewFormName到OldFormName並在Visual Studio中爲您提供一個重構菜單(小REG矩形的最後一個字母前重命名的對象)不做任何事情。

0

你不能添加到資源文件2項具有相同名稱/鍵。它必須是唯一的

enter image description here

+0

這裏的每一件事情確定 – Abe 2012-04-08 20:05:09

+1

上傳您的打印屏幕 – 2012-04-08 20:06:03

+1

@Abe:你不應該編輯答案要儘量迴應 - 我搬到你的形象變成了你的問題,它更有意義。謝謝。 – sarnold 2012-04-09 00:13:55

0

檢查* .resx文件在您的項目@Royi納米爾描述。

如果您已經這樣做:檢查您的.resx.designer文件。一些程序「優化」設計器文件。

設計器文件只是普通的xml。如果它們與相應的xml不同步,那麼您將獲得所描述的異常。

2

這發生在我身上時,我創建了一個部分窗體類。當我無意中在設計模式下查看它時,它爲新的部分表單創建了一個本地化的resx文件。我刪除了這個resx文件並解決了它。

0

我有同樣的問題,我能夠通過以下步驟解決這個問題:

  • Right-Click to your form name例如:MainForm中
  • 現在To Review: Select Find All References你會看到可能發生的衝突
  • To Fix: Select Refactor -> Rename形式的列表 -
  • Select Preview reference changes
  • Rename it Differently
  • Un-checked for the Conflict Form/class
相關問題