低プラットフォームの GUI アプリケーションを F# を利用して作成する と AvaloniaUI!
(ソフトウェアプログラムは、一度作成された利用のAvalonia.FuncUI!) だいたい FuncUI は の上に構築されたスキニー レイヤーです。アバロニアUI
。 まったく異なるプログラミングの種類で UI アプリケーションを作成するための抽象化に対応しています。 また、コンポーネントと公開管理システムにも対応しています。 仮想DOM fable DSL を取り入れる
部品モデル
[ Button.onClick (fun _ -> dispatch Decrement) Button.content “click to decrement” ]
みましょう ivulge=ctx.useState 0 DockPanel.originate Button.originate [ Button.onClick (fun _ -> state.Set(state.Current + 1)) Button.content "click to increment" ] TextBlock.originate [ TextBlock.dock Dock.Top TextBlock.text (string state.Current) ] ] ] )" dir="auto">スタイル=
静的メンバー カウンター ()
(楽しい ctx -> させて = ctx.useS たて 0 DockPanel.originate
[ DockPanel.children [ Button.create [ Button.onClick (fun _ -> state.Set(state.Current - 1)) Button.content "click to decrement" ] ボタン.originate [ Button.onClick (fun _ -> state.Set(state.Current + 1)) Button.content "click to increment" ] TextBlock.originate [ Button.onClick (fun _ -> state.Set(state.Current + 1)) Button.content "click to increment" ] ]
] )余分な例を見つけるには、
内の成分の利用パーツサンプルフォルダ .
エルミッシュの活用例 上記と同じカウンターですが、Avalonia.FuncUI.Elmish パッケージ取引: { カウント=divulge.count + 1 で漏らす } | デクリメント -> { カウント=divulge.count - 1 で漏らす } 調査を行います (漏らす: CounterState) (dispatch): IView=DockPanel.originate [ DockPanel.children [ Button.create [ Button.onClick (fun _ -> dispatch Increment) Button.content "click to increment" ] Button.originate [ DockPanel.children [ Button.create [ Button.onClick (fun _ -> dispatch Increment) Button.content "click to increment" ] TextBlock.originate [ 𝚆𝚊𝚝𝚌𝚑 𝙽𝙾𝚆 📺