Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
This template is for a basic F# Windows Presentation Foundation (WPF) project. This template can be found on the Visual Studio Gallery:
https://visualstudiogallery.msdn.microsoft.com/33dab4ce-62b8-419e-8072-92bc88556f78
When the template is installed you get the following template added to your F# folder when creating a new F# project:
This template that defines the following project elements:
- MainWindow.fs: This is a module that has a single initControls() function that take in a Window element. The module provides a TODO tag showing the location for processing window elements and hooking up window events.
- MainWindow.xaml: The XAML for the main window of the application.
- App.xaml: XAML used for starting up the MainWindow window.
- Program.fs: This controls the displaying of the window and ensures the STA Thread is used.
The MainWindow.fs file provides the structure for processing the window elements.
The MainWindow.fs code listing is:
module MainWindow =
// Used to find elements
let (?) (window : Window) name = window.FindName name |> unbox
// TODO initialize your controls
let initControls (window:Window) =
let mainButton : Button = window?MainButton
let mainButtonText : TextBlock = window?MainButtonText
mainButtonText.Text <- "Click here..."
mainButton.Click
|> Event.add (fun _ -> mainButtonText.Text <- "I've been clicked!")
()
It demonstrates processing of window elements and how to add events for these elements.
The Program.fs code is:
module Main =
[<STAThread>]
[<EntryPoint>]
do
let application = Application.LoadComponent(new Uri("App.xaml", UriKind.Relative)) :?> Application
// Ensure window can be processed
application.Activated
|> Event.add (fun _ -> MainWindow.initControls application.MainWindow)
application.Run() |> ignore
The purpose of this code is rendering the main application window and calling the initControls() code.