【解決方法】main を WPF アプリケーションに追加します。

プログラミングQA

[ad_1]

(おそらく頭が悪いか、考えるには早すぎる)

ウィザードから直接、空の WPF プロジェクトに Main 関数 (エントリ ポイント) を追加しようとしています。

public partial class App
{
    public static void Main(string[] args)
    {
      // do something...
    }
}

エラーが発生します:

error CS0017: Program has more than one entry point defined. Compile with /main to specify the type that contains the entry point.

明らかな何かが欠けていますか? 何かをするために Main 関数を追加することはできませんか?

OnStartup を使用して同じことを実行できることはわかっていますが、Main が定義されたデモ/チュートリアル コードがあり、それが機能する理由がわかりません。

protected override void OnStartup(StartupEventArgs e)
{
    base.OnStartup(e);
}

私が試したこと:

/main の意味を正しく理解していれば、これを追加しました。

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0-windows</TargetFramework>
    <Nullable>enable</Nullable>
    <UseWPF>true</UseWPF>
    <StartupObject>WpfApp3.App</StartupObject>
  </PropertyGroup>

</Project>

解決策 1

メインはフレームワークによって提供されると思います。 Application.XAML ファイルは、起動時にどのウィンドウが自動的に読み込まれるかを定義します。 見る Visual Studio 2019 で最初の WPF アプリを作成する – .NET Framework | マイクロソフト ラーン[^]

解決策 2

Visual Studio が提供するプロジェクト テンプレートを使用して WPF アプリをビルドする場合、これは正常です。
これがあなたが望むものを達成する方法です: Main メソッドを使用した WPF アプリケーション[^]

[ad_2]

コメント

タイトルとURLをコピーしました