2014-01-05 18 views
0

我試圖重命名我的表格,我做了,但是然後..我甚至不知道如何解釋它。表單在解決方案資源管理器部分仍然可見,但我無法打開它。它說「項目'Form4.cs不存在於項目目錄中,它可能已被移動,重命名或刪除。」試圖重命名錶格,現在我不能編輯它

怎麼辦?

+3

重新命名它? – Joe

+1

看起來您已將文件系統中的表單文件重命名。而你的項目仍然引用舊的文件名。使用Visual Studio解決方案瀏覽器進行重命名。目前,您可以在解決方案資源管理器中單擊*顯示所有文件*圖標以查找新文件。然後點擊* Include in Project *添加新文件,並從項目中刪除舊文件 –

+0

@Joe我改名的全部內容現在位於不同的選項卡中。我嚇壞了,我不知道該怎麼做。 – MarisP

回答

1

表格名稱不是神奇地隱藏在某處,所以它應該很容易清理這個混亂。如果你打開你的.csproj文件,你會看到包含類似於這樣的一段:

<Compile Include="Form1.cs"> 
    <SubType>Form</SubType> 
</Compile> 
<Compile Include="Form1.Designer.cs"> 
    <DependentUpon>Form1.cs</DependentUpon> 
</Compile> 
<Compile Include="Program.cs" /> 
<Compile Include="Properties\AssemblyInfo.cs" /> 
<EmbeddedResource Include="Form1.resx"> 
    <DependentUpon>Form1.cs</DependentUpon> 
</EmbeddedResource> 

正如你可能已經猜到,這些所有項(除了「AssemblyInfo.cs中」和「的Program.cs」)應與到文件系統中的現有文件,並且通常它們的名稱應該彼此匹配(即,XXX.Designer.cs對應於XXX.csXXX.resx)。

此外,在一個簡單的項目,這些都是共同的地方表單名稱用於整個代碼:

...\Form1.cs(13): public partial class Form1 : Form 
...\Form1.cs(15):  public Form1() 
...\Form1.Designer.cs(3): partial class Form1 
...\Form1.Designer.cs(43):   // Form1 
...\Form1.Designer.cs(49):   this.Name = "Form1"; 
...\Form1.Designer.cs(50):   this.Text = "Form1"; 
...\Program.cs(23):   Application.Run(new Form1()); 

如果你設法解決所有這些地方,讓他們連貫一切都應該罰款。

您可以反轉在文件系統中對文件進行的任何更改以匹配上面列出的條目,也可以關閉VS並手動編輯.csproj文件,以使其與您擁有的文件相對應。

通常你應該使用VS接口重命名窗體和類,因爲它將確保所有更改都被傳播。所以也許在你的情況下,更容易恢復你的手動更改,並讓VS爲你正確做到這一點。

相關問題