Getting a Good Grasp of F# (仮)

関数型言語F#をもっと楽しみたい

2018-01-01から1年間の記事一覧

WPF のバインディングソースとなるクラスを F# で作る

WPF にはデータバインディングによってオブジェクトの状態変化を別のオブジェクトへ通知する機能があります。 本記事ではバインディングソースを F# のクラスとして作り WPF コントロールと連携させます。そのために INotifyPropertyChanged インタフェース…

開発環境メモ - VS 2019 preview 起動時の挙動・外観を 2017 に近い状態に戻す

[ 2019.02.07 追記:Visual Studio 2019 Preview 2.2 で確認したところ本記事で説明している設定項目はなくなっていました。タイトルバーの設定についてはこちらの記事を参照のこと。] Visual Studio 2019 preview 版導入にあたって、起動直後の UI 設定を 2…

WPF で NumericUpDown コントロールを使う その2 [F#編]

前回 C# で実装した機能を今記事では F# で実装してみます。前回書いた XAML コードを(文字列としてですが)再利用します。 F# での実装 F# でプロジェクトの作成 F#の新規プロジェクトを作成するためにまず「コンソールアプリケーション(.NET Framework)…

WPF で NumericUpDown コントロールを使う その1 [C#編]

WPF には Spin コントロールがありません。一方で、WinForms には Spin コントロールとしての機能を持つ NumericUpDown クラス が存在します。C# で WPF の Window 上にこの NumericUpDown コントロールを配置してみます。このとき WPF に WinForms コントロ…

F# における interface 宣言と実装、そしてオブジェクト式

F#

C#には、インタフェースを宣言するためのキーワード interface が用意されていますが、 F# でのインタフェース宣言は( クラス宣言と同じく)キーワード type を用います。 C# の宣言例 public interface IGreeting { void Say(); } F# の宣言例 type IGreet…