全て
| カテゴリ未分類
| 通常
| 数学
| 投資
| 副業
| 転職・就職
| ブログ
| 株Stock
| VBA
| SharePoint
| REST API
| RenderListDataAsStream
| PowerAutomateDesktop
| Graph API
| PowerApps
| PowerAutomate
| PowerFx
| OfficeScriptオフィススクリプト
| PowerAutomate日時Excel日時相互関係
| PowerShell
| Dataverse
| UiPath
| OneDrive
| LINQ
| VB.NET
| C#.NET
カテゴリ:C#.NET
以下は、C# WPF アプリケーションの MVVM (Model-View-ViewModel) パターンの基本的なサンプルコードです。この例では、ビュー (View)、ビューモデル (ViewModel)、およびモデル (Model) を実装します。 まず、モデルを定義します: ```csharp // Model public class Person { public string FirstName { get; set; } public string LastName { get; set; } } ``` 次に、ビューモデルを定義します: ```csharp // ViewModel using System.Collections.ObjectModel; using System.ComponentModel; public class MainViewModel : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; private ObservableCollection<Person> _people; public ObservableCollection<Person> People { get { return _people; } set { _people = value; OnPropertyChanged("People"); } } public MainViewModel() { // データの初期化などを行う People = new ObservableCollection<Person> { new Person { FirstName = "John", LastName = "Doe" }, new Person { FirstName = "Jane", LastName = "Smith" } }; } protected virtual void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } } ``` 最後に、ビューを定義します: ```xaml <!-- View (MainWindow.xaml) --> <Window x:Class="MVVMSample.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:MVVMSample" mc:Ignorable="d" Title="MVVM Sample" Height="450" Width="800"> <Grid> <ListBox ItemsSource="{Binding People}"> <ListBox.ItemTemplate> <DataTemplate> <StackPanel> <TextBlock Text="{Binding FirstName}" /> <TextBlock Text="{Binding LastName}" /> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> </ListBox> </Grid> </Window> ``` これで、ビュー、ビューモデル、およびモデルが定義されました。ビューとビューモデルはデータバインディングを使用して接続されており、ビューモデルはモデルからデータを取得し、ビューに提供します。この例では、`ListBox` を使用して `Person` オブジェクトの一覧を表示しています。 また、ビューモデルは `INotifyPropertyChanged` インターフェースを実装しており、プロパティの変更を通知することができます。 最後に、アプリケーションの `App.xaml.cs` ファイルでビューモデルをビューに関連付けます: ```csharp // App.xaml.cs using System.Windows; namespace MVVMSample { public partial class App : Application { protected override void OnStartup(StartupEventArgs e) { base.OnStartup(e); MainViewModel viewModel = new MainViewModel(); MainWindow view = new MainWindow(); view.DataContext = viewModel; view.Show(); } } } ``` これで、MVVM パターンを使用して基本的な WPF アプリケーションが構築されました。 お気に入りの記事を「いいね!」で応援しよう
Last updated
2024.04.07 13:39:08
[C#.NET] カテゴリの最新記事
|