WPF DateTimePicker サンプル作成

まずは全体の流れを説明します。

  1. プロジェクトフォルダの構成を作成する
  2. WPFアプリケーションを作成する
  3. XAMLファイルにDateTimePickerを配置する
  4. PowerShellファイルでDateTimePickerを操作する

プロジェクトフォルダの構成

📦DateTimePickerSampleApp

┣ 📂GUI

┃ ┣ 📜MainWindow.xaml

┃ ┗ 📜MainWindow.ps1

┗ 📜App.ps1

WPFアプリケーション作成

App.ps1 ファイルにWPFアプリケーションを作成します。

# App.ps1

Add-Type -AssemblyName PresentationFramework

# GUIファイルの読み込み
$MainWindowXaml = Join-Path $PSScriptRoot "GUI/MainWindow.xaml"
[xml]$xaml = Get-Content $MainWindowXaml
$reader = New-Object -TypeName System.Xml.XmlNodeReader -ArgumentList $xaml
$MainWindow = [Windows.Markup.XamlReader]::Load($reader)

# PowerShellファイルの読み込み
$MainWindowPs1 = Join-Path $PSScriptRoot "GUI/MainWindow.ps1"
. $MainWindowPs1

# イベントの設定
$MainWindow.Add_SourceInitialized($OnMainWindowLoaded)

# アプリケーションの実行
$App = [Windows.Application]::new()
$App.Run($MainWindow)

XAMLファイルにDateTimePickerを配置する

MainWindow.xaml ファイルにDateTimePickerコントロールを配置します。

<!-- MainWindow.xaml -->
<Window xmlns="<http://schemas.microsoft.com/winfx/2006/xaml/presentation>"
        xmlns:x="<http://schemas.microsoft.com/winfx/2006/xaml>"
        x:Name="MainWindow"
        Title="DateTimePicker Sample" Height="200" Width="300">
    <Grid>
        <Label Content="日付を選択:" HorizontalAlignment="Left" Margin="10,20,0,0" VerticalAlignment="Top" />
        <DatePicker x:Name="datePicker" HorizontalAlignment="Left" Margin="100,20,0,0" VerticalAlignment="Top" />
    </Grid>
</Window>

PowerShellファイルでDateTimePickerを操作する

MainWindow.ps1 ファイルでDateTimePickerの操作を行います。