【WPF】C#スクリプト・エディター「RoslynPad」を組み込む

プログラミングTips
この記事は約3分で読めます。

自作プログラムにC#スクリプトの実行機能を組み込む場合、自作プログラムの中でC#スクリプトを編集したくなりますよね。

TextBoxを使っても構わないのですが、Visual Studioの様なコード補完機能がありません。

しかし、RoslynPadというフリーのコントロールを使うことで、一般のテキストエディタっぽい入力とC#コードの補完機能が使えるようになります。

今回は、このRoslynPadの組み込み方について解説いたします。

RoslynPadの動作

あたかもVisual Studioでソースコードを編集しているのに近い補完機能が使えるようになります。

インストール方法

インストール方法というか、自作プログラムのプロジェクトに組み込むには、NuGetを使います。

NuGetの詳しい使い方が知りたい方は、こちらをご覧ください。

Visual Studio のメニューから「ツール」→「NuGetパッケージマネージャ」→「ソリューションのNuGetパッケージの管理」を選択すると下記の画面が表示されますので、”Roslyn pad”で検索してください。

そして、”RoslynPad.Editor.Windows”を選択し、インストールします。

最新バージョン1.2.0 は Framework 4.8 が入っていないとインストールできませんのでご注意ください。

私の環境で Framework 4.8 をインストール後、最新版をインストールしてみたところ、実行時に「アセンブリが参照できない」というエラーが発生します。

Frameworkのバージョンが 4.7.2 で、 RoslynPad.Editor.Windows のバージョンが 1.0.4 の場合は動作確認が出来ていますので、あえてバージョンダウンしています。

組み込み方法

RoslynPad を実際に使う場合、XAMLとC#に記述が必要です。

まず最初に、XAMLに次のような参照とコントロールを記述します。

ちなみに、RoslynPadの正式名称は RoslynCodeEditor なので、そのように記述します。

下記は具体的なサンプルです。

ここでは、RoslynPadに uxEditor という名前を付けていることに注意してください。

C#側では冒頭の参照設定に次の4行を追加します。

次に、コンストラクタに次の4行を記載します。

上記2点を実際に組み込んだサンプルは次のようになります。

まとめ

以上で内容は終了です。

自作プログラムに簡単に組み込むことができますので、自作プログラムの中でC#スクリプトを記述させたい方は、是非ご活用下さい。

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