簡體   English   中英

應用程序不包含定義

[英]Application does not contain a definition

我有一個 C# 表單應用程序。 我在程序中導入了一個額外的 CS 文件,現在它不再編譯了。 每次我嘗試編譯時,我都會收到以下消息:

Application does not contain a definition for 'EnableVisualStyles'
Application does not contain a definition for 'SetCompatibleTextrenderingDefault'
Application does not contain a definition for 'Run'

當我單擊錯誤時,它會將我帶到 Programs.cs。 它只包含以下信息:

/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
    Application.EnableVisualStyles();
    Application.SetCompatibleTextRenderingDefault(false);
    Application.Run(new Form1());
}

任何幫助,將不勝感激。

還有一點,測試控制台應用程序工作正常,但是我希望這個應用程序成為表單應用程序。

您為命名空間添加了一個新的using語句,該命名空間具有Application另一個定義(它可能是您自己的)並且具有優先級。 您可以使用完全限定名稱來確保您的目標是正確的Application類:

global::System.Windows.Forms.Application.EnableVisualStyles();
global::System.Windows.Forms.Application.SetCompatibleTextRenderingDefault(false);
global::System.Windows.Forms.Application.Run(new Form1());

(你可以省略global::只要你沒有一個名為System的類,但上面的只是在不明確的命名空間/類名稱的事實中更健壯一點。

其他替代方法包括重命名自定義Application類(如果它確實是您自己的),而不是為該文件(或任何使用System.Windows.Forms Application類的文件)所在的任何命名空間添加usingSystem.Windows.Forms添加別名System.Windows.Forms.Application (這是通過using FormApplication = System.Windows.Forms.Application;類的東西using FormApplication = System.Windows.Forms.Application;完成的)等。

我在使用實體模型框架連接到恰好有一個名為“Application”的表的數據庫時遇到了這個問題。 一旦為數據庫生成了類,我立即有兩個“應用程序”類導致了有問題的錯誤。 在我的 Program.cs 文件的 Main() 方法中,以下代碼更改修復了該問題:

System.Windows.Forms.Application.EnableVisualStyles();         
System.Windows.Forms.Application.SetCompatibleTextRenderingDefault(false);
System.Windows.Forms.Application.Run(new MyForm());

我知道這是一個死循環,但它適用於我今天的情況。 @James G 上面的回答讓我意識到我導入了一個包含“應用程序”定義的 Web 服務,這也導致了這個錯誤。 作為檢查事項的一部分,請確保任何導入的服務不會附帶包含“應用程序”。

如果有人在導入它,DynamicsSecurityAdminService 就是對我做的那個。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM