私は理論を取得して独自に実装したいと思うので、質問を簡潔にしておきますが、必要に応じてより多くの情報/コードを提供できます。WPFの静的変数からシングルトンへの移行
私は単純な経費トラッカーを作成するためにWPFアプリケーションに取り組んでいます。今度は、EntriesDate、EntryCategory、EntryAmount、およびEntryCommentという4つの要素を持つExpenseEntryというオブジェクトのObservable Collectionを表示する1つのXAMLページがあります。 TempExpenseEntryとExpenseList(Observable Collection)は、private _variable、public変数(get; set)を使用して、ページのViewModel.csで開始されると宣言され、コードが動作します。エントリを整理します。 EntryTotalと呼ばれる浮動小数点もあり、新しいエントリが追加されるたびにEntryAmountをすべて集計します。
今、私は分析のために別のページを追加したいと思います。最終的には鐘や笛がたくさん出ますが、今はCategoryListと呼ばれる別のObservable Collectionを1ページ目で観察/購読し、新しいエントリが追加されたときに何らかのアクションを実行するようにしたいと考えています。具体的には、アクションはCategoryNameが存在するかどうかを確認することです。そうであれば、CategoryAmountが合計に追加され、そうでない場合は、新しいエントリがリストに追加されます。
自分自身より知識のある人との相談やリサーチではシングルトンを使用しているため、両方のページのビューモデルでExpenseListを見ることができます。私はSingletonインスタンスを作成するチュートリアルを見つけましたが、ページ1のView Modelで宣言したpublic/private要素から、複数のページで共有されるSingletonに移動する方法についてのガイドは見つかりませんでした。 TempExpenseEntryとExpenseListをシングルトンでインスタンス化する必要がありますか?カテゴリーリストはどうですか?これらの変数は、Singletonクラスで同じ方法で宣言されますか? 1ページと2ページだけがシングルトンのインスタンスを持っていますか?ページ固有のメソッドとイベントのサブスクリプションはどこで行われるべきですか?
私はコミュニティの指導に感謝します。私は周りを突きつけて、自分自身で仕事をして学ぶための具体的なことを得るが、実際には正しい方向に向かって振る舞いを使うことができる。
希望のお声をお聞かせ、
Yusif Nurizade
返事をありがとう:あなたのその後
は、あなたがこのようにバインドすることができますXAML。私は明確にする必要があります - 現在のコードは、プライベート/パブリックgetとしてコード内の変数を持って、静的の使用を設定しません。これらのうちのいくつかはxamlコードに関連付けられています。シングルトンにコピーを貼り付けようとしたとき、コードは機能しなくなりました - 私が見逃しているディテールはありますか? –