C# => F# - GUI Converter

Visual Studio 2010では残念ながらF#のフォームデザイナが提供されません。
F#でWindowsフォームを扱う場合にはゼロからコードを書かなくてはなりません。
ということで、せめてフォームデザイナが自動生成するC#のコードをF#に変換するツールを作りました。

最初はASP.NETで提供する予定だったのですが色々あって、クライアントアプリのみの提供となります。。
VS2008/2010のデザイナが生成するコードなら多分対応できるはず。(テストがバッチリとは言い難い)

How to use

上のほうのテキストボックスに直接ソースをペーストするか、ファイル(*.Designer.cs)をロードします。
あとはRunボタンを押すだけ。すると下のテキストボックスにF#の濃厚なソースが出てきます。
このコードを.fsファイルなどにコピペしていただければそのまま使えます。


注意点がひとつ。
リソースファイル(が必要な場合)は手動で移動しなくてはなりません。(見つからないと例外で死んじゃう)
エクスプローラから*1 Form1.resx などという名前のファイルを見つけ出し、.fsファイルと同じ場所にコピーしてきてください。その時おそらくファイル名を変更する必要があります。名前空間の名前を先頭に付けてやります。例えば Ns.Form1.resx のように。

Download

.NET Framework 2.0 以上であれば動くはず。一応まだβ扱いということで。

Download

その他

すべてF#で書きました。(GUIの作成はこのツールを使った)
プログラムの量が増えれば増えるほど対話環境の有り難味が身に染みてくる・・・!
細部からの頻繁なテストによって地盤のしっかり固まったボトムアッププログラミングができる。ポールグレアムがOn Lispの中で言っていたスタイルだ。

*1:Visual Studio上ではできないみたいです