「東雲 忠太郎」の平凡な日常のできごと

「東雲 忠太郎」の平凡な日常のできごと

2024.03.28
XML
カテゴリ: C#.NET


C# WPFアプリケーションでグローバル変数を宣言する方法はいくつかありますが、WPFのMVVMパターンに従う場合、通常はViewModel内にプロパティとして定義されます。以下に、グローバル変数をViewModelで宣言する方法のサンプルコードを示します。


```csharp

using System.ComponentModel;


public class MainViewModel : INotifyPropertyChanged

{

    // グローバル変数として使用するプロパティ

    private string _globalString;

    public string GlobalString

    {

        get { return _globalString; }

        set

        {

            _globalString = value;

            OnPropertyChanged(nameof(GlobalString));

        }

    }


    // コンストラクタで初期化などを行う場合がある

    public MainViewModel()

    {

        // グローバル変数の初期化など

        GlobalString = "Initial Value";

    }


    // INotifyPropertyChanged インターフェースの実装

    public event PropertyChangedEventHandler PropertyChanged;

    protected virtual void OnPropertyChanged(string propertyName)

    {

        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));

    }

}

```


これで、`MainViewModel`内の `GlobalString` プロパティがグローバル変数として機能します。他のViewModelやViewでこの変数をバインディングすることができます。


ViewModelをインスタンス化し、グローバル変数を使用する方法は、以下のようになります。


```csharp

MainViewModel viewModel = new MainViewModel();

string currentValue = viewModel.GlobalString;

```


また、WPFアプリケーション全体でグローバル変数を使用したい場合、`App.xaml.cs`ファイル内でグローバルなプロパティを定義することもできます。例えば、次のようにします。


```csharp

public partial class App : Application

{

    public static string GlobalString { get; set; }

}

```


これにより、アプリケーション内のどこからでも `App.GlobalString` を使用してグローバル変数にアクセスできます。






お気に入りの記事を「いいね!」で応援しよう

Last updated  2024.03.28 04:29:53


【毎日開催】
15記事にいいね!で1ポイント
10秒滞在
いいね! -- / --
おめでとうございます!
ミッションを達成しました。
※「ポイントを獲得する」ボタンを押すと広告が表示されます。
x

© Rakuten Group, Inc.
Create a Mobile Website
スマートフォン版を閲覧 | PC版を閲覧
Share by: