WPFに関する世界観です。
新しいWindowsのGUIシステム。
XAMLを用いた新しいGUIデザイン。
従来のWindows APIをラップしただけのWindows.Formsと異なり、マネージドコードによって新しく実装されている。
また、UIにXAMLを使うことで、従来のロジックとビューが同じプログラムの中で混在していたWindows.Formsを改め、ロジックからUIデザインを表現するビューを分離し、ビューを記述するデザイナーとロジックを記述するエンジニアの仕事を分担できる。
XAMLとはMicrosoftによるXMLでGUIを表現する技術のこと。
WPFでは従来のWindows.Formsの代わりにXAMLを用いてGUIデザインを行う。
MozillaによるXULなどとよく似ている。
以下ににサンプルコードがあります。
以下はその他のサンプル。
以下はAIによるWPFのサンプル。GoogleのAIに書いてもらいました。
MainWindow.xaml
<Window x:Class="WpfSample.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="WPFサンプル" Height="200" Width="300">
<StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
<!-- TextBlock: 文字を表示。Nameで名前を付ける -->
<TextBlock Name="MessageTextBlock" Text="こんにちは!" FontSize="20" Margin="10" TextAlignment="Center"/>
<!-- Button: クリックイベントを追加 -->
<Button Content="メッセージ変更" Click="ChangeMessageButton_Click" Width="120" Height="30"/>
</StackPanel>
</Window>
MainWindow.xaml.cs
using System.Windows;
namespace WpfSample
{
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
}
// ボタンが押された時の処理
private void ChangeMessageButton_Click(object sender, RoutedEventArgs e)
{
// TextBlockのTextプロパティを書き換える
MessageTextBlock.Text = "ボタンが押されました!";
}
}
}
2026.02.05
Microsoftによる、Webブラウザプラグイン。Adobe Flash/Flexと同様のシステム。
RIA(リッチインターネットアプリケーション)も参照のこと。
Avalonia UIはWPFに似たフレームワークでありながらマルチプラットフォーム。C#/XAMLを使用するがWindowsだけではなくmacOSやLinuxでも動くアプリケーションを開発できる。
2023.10.02