2010-05-17 48 views
0

我已經多次出現這個問題,它毀了我的項目,我做了一些改變,比如說,我在窗體的左上角有一個按鈕,並將它移動到右上角,然後按下調試,但沒有任何反應表單,它不會改變按鈕仍然在左上角,而不是右上角,它也不會除了任何新的代碼,它就像它保存在那裏的項目,並不會繼續前進。有人知道爲什麼或有過這個問題嗎?調試器爲什麼不更新?

請幫忙!!!!

附加信息: 編譯器:Microsoft Visual C#2008速成版 我曾經通過重新構建解決方案解決了此問題,但其再也無法工作。

回答

0

在的項目和解決方案 - >生成和運行更改的選項上運行,當項目是過時的Visual Studio的設置:從永遠無法爲始終建立

工具>選項>項目和解決方案>構建和Run> On Run,當項目過期時:「Always Build」

+0

我不使用Visual Studio,使用Microsoft Visual C#2008速成版即時通訊,我無法找到該設置 編輯:好的,我發現它,但它沒有奏效。 – Tanner 2010-05-17 16:48:06

+0

在VS的高級版本中,選項對話框底部的「顯示所有選項」複選框。確保已選中。 (不要讓我開始爲什麼複選框存在) – 2010-05-17 16:50:58

+0

@Tanner:你正在使用Visual Studio; Visual C#Express(不管版本)只是Visual Studio的副本,僅支持C#並且沒有完整的功能集。 – 2010-05-17 16:53:56

0

除了我同意的@ SwDevMan81的答案,我會說設置輸出和參考路徑可能有助於避免類的行爲庫。例如,您的應用程序引用您當前正在編寫的類庫,並對此引用的庫執行一些更改,但不會顯示這些更改。

會發生什麼情況是,編譯器將複製localy(到項目的輸出目錄)引用的DLL,只要它在那裏,它就不會被更新。您可以在引用的程序集上單擊右鍵,然後單擊「屬性」進行驗證。查看Filepath屬性。如果您發現它與您的實際文件路徑不匹配,那麼您將必須確保在項目屬性中相應地設置參考路徑,然後移除然後移除實際參考以將其添加到實際構建的位置,也就是,您的類庫輸出文件夾已設置。所以,無論何時重新生成類庫,應用程序都會自動獲取更新。下面是一個例子:

應用項目引用ClassLibrary1.dll程序集。

一旦你將生成你的應用程序,ClassLibrary1.dll文件將被複制到你的應用程序輸出目錄。我們假設C:\Open\Projects\ApplicationProject1\Debug\bin。因此,該目錄現在將包含ClassLibrary1.dll文件。

  1. 重寫一個方法的行爲完全不同;
  2. 重新生成ClassLibrary1程序集;
  3. 您重新運行您的應用程序(請記住該文件已經存在!
  4. 最後想知道爲什麼變更沒有生效?這是因爲您的應用程序在其Debug\bin文件夾中引用了緩存的程序集。

要解決:

  1. 從您的應用程序項目的組裝參考;
  2. 轉到項目的屬性,然後單擊參考路徑選項卡;
  3. 瀏覽到您的ClassLibrary1輸出文件夾,然後打開它;
  4. 您現在爲此庫設置了您的引用路徑屬性,然後將ClassLibrary1程序集重新添加到您的應用程序項目中;
  5. 運行一次,停止運行,並查看引用程序集的Path屬性是否與項目的Reference Path屬性中的路徑屬性相同;
  6. 你完成了(如果一切正常)。 C:\打開\項目\ ClassLibrary1的\調試\ BIN \ ClassLibrary1.dll

最終,這可能是你的問題的原因,如果你的GUI表單是一個類庫的一部分,該解決方案我描述應該工作。

+0

我真的不明白,我沒有ClassLibrary1。 – Tanner 2010-05-17 17:19:13

+0

你的解決方案是什麼樣的?你可以發佈一些示例代碼,以向我們展示? – 2010-05-17 17:41:45

1

嘿,我弄明白了,我在解決方案資源管理器中右鍵單擊Form1,單擊屬性並將Build Action更改爲none,然後返回到Compile,它似乎正在工作。

0

SwDevMan81和Tanner的回答對我無效。

然而,

構建>重建解決方案

...沒有!

相關問題