VSCodeでWindowsアプリを開発することはできるか

採用はこちら

VSCodeでもWindows向けのデスクトップアプリを開発できます。

代表的な開発方法としては、C#と.NETを使うWinUI 3、WPF、Windows Forms、.NET MAUIのほか、JavaScriptやTypeScriptを使うElectron、Web技術とRustを組み合わせるTauriなどがあります。

特に、新しくWindows専用のネイティブアプリを開発する場合は、Windows App SDKとWinUI 3が有力な選択肢です。

Microsoftも、新規のWindowsネイティブアプリについてはWindows App SDKとWinUI 3を推奨しています。

ただし、VSCodeはVisual Studioとは性格が異なります。

VSCodeはコード編集やコマンドライン中心の開発には向いていますが、Windows Formsのビジュアルデザイナーや、Windows向けの高度なXAML開発支援機能を利用したい場合はVisual Studioのほうが適しています。

目次

VSCodeで開発できるWindowsアプリの種類

VSCodeでWindowsアプリを開発する場合、まずどのフレームワークを利用するかを決める必要があります。

主な選択肢は次のとおりです。

技術主な言語特徴主な用途
WinUI 3C# / C++新しいWindowsネイティブUI新規Windowsアプリ
WPFC#成熟したXAMLベースのUI業務アプリ
Windows FormsC#シンプルで扱いやすい管理ツール・社内ツール
.NET MAUIC#クロスプラットフォーム対応Windows・モバイルアプリ
ElectronJavaScript / TypeScriptWeb技術を利用できるWeb系デスクトップアプリ
TauriWeb技術 + Rust軽量な構成にしやすいWeb技術中心のデスクトップアプリ
Win32C / C++Windows APIを直接利用低レベル・高性能アプリ

新規のWindowsアプリならWinUI 3が有力

新しくWindows専用アプリを開発するのであれば、WinUI 3を検討するとよいでしょう。

WinUI 3はWindows App SDKに含まれるUIフレームワークで、Windows 11らしいモダンなインターフェースを構築できます。

なお、WinUI 3はWindows 11専用ではありません。

Windows App SDKが対応しているWindows 10環境でも利用できます。

業務アプリならWPFも有力

WPFは長年利用されている.NET向けWindowsデスクトップUIフレームワークです。

企業向けシステムや管理画面などでは現在でも広く利用されています。

既存資産やライブラリが豊富であるため、業務アプリでは非常に実用的な選択肢です。

小規模な管理ツールならWindows Formsも使える

Windows Formsは、比較的シンプルなWindowsアプリを開発する場合に向いています。

社内ツール、入力画面、ファイル変換ツール、データ管理ツールなどを短期間で作りたい場合に便利です。

現在の.NETでもWindows Formsは継続してサポートされています。

VSCodeでWindowsアプリを作るならC#が使いやすい

Windows向けアプリを初めて開発するのであれば、C#は有力な選択肢です。

C#を利用すると、WinUI 3、WPF、Windows Forms、.NET MAUIなど、複数のWindows向けフレームワークを扱えます。

特にWindows専用のネイティブアプリを新しく作る場合は、C#とWinUI 3の組み合わせが分かりやすいでしょう。

VSCodeをインストールする

まず、WindowsにVSCodeをインストールします。

VSCode本体にはC#のコンパイラや.NET SDKは含まれていないため、Windowsアプリを開発する場合は必要な開発環境を別途インストールします。

.NET SDKをインストールする

C#でWindowsアプリを開発する場合は、.NET SDKをインストールします。

インストール後、PowerShellやVSCodeのターミナルで次のコマンドを実行します。

dotnet --version

バージョン番号が表示されれば、.NET SDKを利用できる状態です。

WinUI 3では対応する.NET SDKを利用する

WinUI 3を.NET CLIから開発する場合は、利用するWindows App SDKや公式テンプレートが要求する.NET SDKのバージョンを確認する必要があります。

2026年時点のMicrosoft公式手順では、CLIベースのWinUI 3開発に.NET 10 SDK以降を利用する構成が案内されています。

そのため、古い.NET SDKをインストールしたままでは、最新のWinUI 3テンプレートを正常に利用できない場合があります。

C# Dev Kitをインストールする

VSCodeでC#を扱う場合は、Microsoftが提供しているC# Dev Kitを導入すると便利です。

VSCodeの左側にある「拡張機能」を開き、次の名前で検索します。

C# Dev Kit

C# Dev Kitをインストールすると、C#開発で利用する各種機能をVSCode上で使いやすくなります。

C# Dev Kitで利用できる主な機能

C# Dev Kitを利用すると、主に次のような機能を利用できます。

  • IntelliSense
  • コード補完
  • C#プロジェクト管理
  • ソリューション管理
  • デバッグ
  • テスト実行

VSCodeを使って.NETアプリを開発する場合は、導入しておくと作業効率が向上します。

参考サイト

Microsoft、「C# Dev Kit」をプレビュー公開 ~「VS Code」でC#開発環境を構築 – 窓の杜

WinUI 3でWindowsアプリを作る方法

新しくWindows向けネイティブアプリを作る場合は、WinUI 3を利用できます。

現在は.NET CLI向けのWinUI 3テンプレートが用意されているため、Visual Studioを使わずにプロジェクトを作成することも可能です。

WinUI 3テンプレートをインストールする

PowerShellまたはVSCodeの統合ターミナルを開き、次のコマンドを実行します。

dotnet new install Microsoft.WindowsAppSDK.WinUI.CSharp.Templates

これでWinUI 3用のC#プロジェクトテンプレートが.NET CLIへ追加されます。

WinUI 3プロジェクトを作成する

次のコマンドで新しいWinUI 3プロジェクトを作成できます。

dotnet new winui -n MyWinUIApp

MyWinUIAppという名前のプロジェクトが作成されます。

続いて、プロジェクトフォルダーへ移動します。

cd MyWinUIApp

VSCodeで開きます。

code .

WinUI 3アプリをビルドする

VSCodeのターミナルで次のコマンドを実行します。

dotnet build

エラーが発生しなければ、アプリのビルドは成功です。

WinUI 3アプリを実行する

現在の公式WinUI 3テンプレートでは、.NET CLIからアプリを起動できます。

dotnet run

アプリのウィンドウが表示されれば、WinUI 3の開発環境が正しく構築されています。

WinUI 3ではXAMLとC#を使って画面を作る

WinUI 3では、画面の構造をXAMLで記述し、アプリの処理をC#で記述する方法が一般的です。

例えば、XAML側では次のようにUIを定義できます。

<Window
    x:Class="MyWinUIApp.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <StackPanel
        HorizontalAlignment="Center"
        VerticalAlignment="Center"
        Spacing="12">

        <TextBlock
            Text="Hello Windows!"
            FontSize="32" />

        <Button
            Content="クリック"
            Click="Button_Click" />

    </StackPanel>
</Window>

C#側では、ボタンを押したときの処理などを記述します。

private void Button_Click(object sender, RoutedEventArgs e)
{
    // ボタンをクリックしたときの処理
}

基本的には、XAMLが画面、C#が処理という役割分担になります。

WinUI 3では開発者モードを有効にする

WinUI 3を.NET CLIから開発・実行する場合は、Windowsの開発者モードを有効にします。

開発者モードは単なる推奨設定ではなく、MicrosoftのCLI向けWinUI 3開発手順では前提条件として案内されています。

開発者モードを設定する方法

Windowsの設定から、次のように進みます。

設定
↓
システム
↓
開発者向け
↓
開発者モード

また、「ファイル名を指定して実行」などから次のコマンドを入力して設定画面を開くこともできます。

ms-settings:developers

WPFアプリをVSCodeで作る方法

WPFも.NET CLIを利用してプロジェクトを作成できます。

次のコマンドを実行します。

dotnet new wpf -n MyWpfApp

プロジェクトフォルダーへ移動します。

cd MyWpfApp

VSCodeで開きます。

code .

アプリを実行します。

dotnet run

正常に起動すれば、WPFアプリをVSCodeから開発できる状態です。

WPFではVisual Studioのほうが便利な場合がある

WPFはVSCodeでもXAMLやC#を編集できます。

ただし、Visual StudioにはXAML開発を支援する機能が多く用意されています。

UIを視覚的に確認しながら開発したい場合や、大規模なWPFアプリを開発する場合はVisual Studioのほうが効率的なケースがあります。

Windows FormsアプリをVSCodeで作る方法

Windows Formsも.NET CLIからプロジェクトを作成できます。

dotnet new winforms -n MyWinFormsApp

プロジェクトへ移動します。

cd MyWinFormsApp

VSCodeで開きます。

code .

アプリを実行します。

dotnet run

この方法でWindows Formsアプリを作成できます。

VSCodeではWindows FormsのGUIデザイナーに注意する

Windows FormsをVSCodeで利用する場合、特に注意したいのがUIデザインです。

Visual Studioでは、ButtonやTextBoxなどをフォーム上へドラッグ&ドロップして配置できるWindows Forms Designerを利用できます。

一方、VSCodeはWindows Formsのビジュアルデザイナーを中心に開発するためのIDEではありません。

そのため、Windows FormsのUIを視覚的に作成したい場合はVisual Studioのほうが適しています。

VSCodeは、既存のWindows Formsプロジェクトのコード編集や、CLIによるビルド・実行などで利用するほうが向いています。

.NET MAUIでWindowsアプリを作る方法もある

Windowsだけでなく、AndroidやiOS、macOS向けのアプリも同時に開発したい場合は.NET MAUIを検討できます。

.NET MAUIでは、C#やXAMLを使って複数のOS向けアプリを開発できます。

対象となる主なプラットフォームは次のとおりです。

  • Windows
  • Android
  • iOS
  • macOS

Windows専用アプリだけを作るのであればWinUI 3やWPFのほうがシンプルな場合があります。

スマートフォン版やmacOS版も将来的に提供したい場合は、.NET MAUIが候補になります。

Web開発者ならElectronも選択肢になる

HTML、CSS、JavaScript、TypeScriptに慣れている場合は、Electronを利用してWindowsデスクトップアプリを作る方法もあります。

ElectronではWeb技術を利用してデスクトップアプリを構築できます。

例えば、次のような技術を利用できます。

  • HTML
  • CSS
  • JavaScript
  • TypeScript
  • Node.js

VSCode自体もElectronをベースに構築されています。

そのため、Web開発の知識をデスクトップアプリへ応用したい場合はElectronが使いやすいでしょう。

TauriでWindowsアプリを作る方法もある

Electronよりも軽量な構成を検討したい場合はTauriも選択肢になります。

Tauriでは、Webフロントエンド技術とRustベースのネイティブ機構を組み合わせてデスクトップアプリを構築します。

React、Vue、Svelteなどのフロントエンドフレームワークと組み合わせることもできます。

Web開発の知識を活用しながら、比較的軽量なWindowsアプリを作りたい場合に検討できます。

VSCodeでWindowsアプリをデバッグする

C# Dev Kitなどを利用すると、VSCodeの「実行とデバッグ」機能を使ってC#アプリをデバッグできます。

ソースコードにブレークポイントを設定すると、その位置で処理を停止できます。

例えば、次のようなコードがあるとします。

private void Button_Click(object sender, RoutedEventArgs e)
{
    var message = "Hello";
}

処理を停止すると、変数の内容や呼び出し履歴などを確認できます。

VSCodeで確認できる主なデバッグ情報

VSCodeでは、主に次の機能を利用できます。

  • Breakpoints
  • Variables
  • Watch
  • Call Stack
  • Debug Console

アプリの処理が正しく動作しない場合は、ブレークポイントを利用して原因を調査すると効率的です。

VSCodeのターミナルを活用する

VSCodeで.NETアプリを開発する場合は、統合ターミナルを頻繁に利用します。

Windowsでは、一般的に次のショートカットでターミナルを開けます。

Ctrl + `

よく使う.NET CLIコマンド

.NETのバージョンを確認します。

dotnet --version

利用できるテンプレートを確認します。

dotnet new list

依存関係を復元します。

dotnet restore

プロジェクトをビルドします。

dotnet build

アプリを実行します。

dotnet run

テストを実行します。

dotnet test

VSCodeで.NETアプリを開発する場合は、これらのコマンドを覚えておくと便利です。

NuGetパッケージを追加する

.NETアプリでは、NuGetを利用して外部ライブラリを追加できます。

例えば、MVVM構成を支援するCommunityToolkit.Mvvmを追加する場合は、次のように実行できます。

dotnet add package CommunityToolkit.Mvvm

NuGetを利用すると、データベース、HTTP通信、ログ、MVVM、JSON処理など、さまざまな機能を追加できます。

Windowsアプリを配布する

アプリが完成したら、開発環境以外のパソコンでも利用できるように発行します。

WPFやWindows Formsなどの一般的な.NETアプリでは、dotnet publishを利用できます。

例えば、64bit Windows向けに発行する場合は次のように実行できます。

dotnet publish -c Release -r win-x64

WinUI 3は配布方法によって手順が異なる

WinUI 3では、単純にdotnet publishを実行すればすべての配布が完了するわけではありません。

WinUI 3には主に次のような配布形態があります。

  • MSIXによるパッケージ形式
  • 外部配置を利用するパッケージ形式
  • 非パッケージ形式

プロジェクト構成によって発行や配布の方法が異なるため、実際に配布する際は使用しているWindows App SDKやプロジェクト構成に合わせて設定する必要があります。

UWPを新規開発で選ぶ必要性は低い

以前のWindowsアプリ開発ではUWPがよく利用されていました。

しかし現在、MicrosoftはUWPをメンテナンスモードとして位置付けています。

新規Windowsアプリでは、Windows App SDKとWinUI 3を利用する方向が推奨されています。

そのため、これからWindowsアプリ開発を学ぶ場合は、UWPよりもWinUI 3を優先して学習するほうがよいでしょう。

VSCodeとVisual Studioのどちらを使うべきか

VSCodeでもWindowsアプリは開発できますが、用途によってはVisual Studioのほうが適しています。

VSCodeが向いているケース

VSCodeは次のような場合に向いています。

  • 軽量なエディターを使いたい
  • コマンドライン操作に慣れている
  • C#コードを中心に開発したい
  • Gitを頻繁に利用する
  • ElectronやTauriを使いたい
  • Web開発とWindows開発を同じ環境で行いたい

特にCLI中心で開発する場合は、VSCodeでも十分対応できます。

Visual Studioが向いているケース

Visual Studioは次のような場合に向いています。

  • WinUI 3を本格的に開発する
  • WPFのXAML開発を効率化したい
  • Windows Forms Designerを利用したい
  • 大規模な.NETプロジェクトを扱う
  • Windows専用の高度なデバッグ機能を利用したい

Visual StudioにはXAML Hot ReloadやLive Visual Treeなど、Windows向けUI開発を支援する機能が充実しています。

そのため、Windows GUIアプリを本格的に開発する場合はVisual Studioのほうが作業しやすいケースがあります。

VSCodeでWindowsアプリを開発する基本的な流れ

C#とWinUI 3を利用する場合は、次のような流れで開発します。

.NET SDKをインストール
↓
VSCodeをインストール
↓
C# Dev Kitをインストール
↓
Windowsの開発者モードを有効化
↓
WinUI 3テンプレートをインストール
↓
プロジェクトを作成
↓
VSCodeで編集
↓
dotnet build
↓
dotnet run
↓
デバッグ
↓
配布

WinUI 3のプロジェクト作成から起動までは、主に次のコマンドを利用します。

dotnet new install Microsoft.WindowsAppSDK.WinUI.CSharp.Templates

dotnet new winui -n MyWinUIApp

cd MyWinUIApp

dotnet run

このように、VSCodeと.NET CLIを組み合わせることでWindowsアプリを開発できます。

まとめ

VSCodeでもWindowsアプリを開発することは可能です。

C#と.NETを利用すれば、WinUI 3、WPF、Windows Forms、.NET MAUIなど、さまざまなWindowsアプリを開発できます。

新しくWindows専用のネイティブアプリを作るのであれば、Windows App SDKとWinUI 3が有力な選択肢です。

業務アプリではWPF、小規模な管理ツールではWindows Forms、Windows以外のOSにも対応したい場合は.NET MAUIを検討できます。

また、Web開発の経験を活かしたい場合はElectronやTauriという選択肢もあります。

ただし、VSCodeはあくまで軽量なコードエディターを中心とした開発環境です。

Windows Formsのビジュアルデザイナーや、XAML Hot Reload、Live Visual TreeなどのWindows向けGUI開発支援機能を重視する場合はVisual Studioのほうが適しています。

そのため、VSCodeでWindowsアプリを開発する場合は、コードと.NET CLIを中心に開発したい人に特に向いていると考えると分かりやすいでしょう。

以上、VSCodeでWindowsアプリを開発することはできるかについてでした。

最後までお読みいただき、ありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次