問題タブ [mvvm]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
wpf - WPF - ページ/ウィンドウ レベルで ViewModel の変更に対応する最良の方法
私は XBAP を開発していますが、簡単な要件があります。
DataContext
メイン ページ全体の は、 my のインスタンスに設定されますUserViewModel
。UserViewModel
には、「 」、「 」、「」などの値を持つ列挙型である がDependencyProperty
呼び出されます。 AuthenticationState
Authenticated
NotAutheticated
AuthenticationFailed
ここで、ページ上のさまざまな要素を非表示/表示して、この値の変更に対応する必要があります。
それを行うための最良の方法は何ですか(そしてどこですか?)
model-view-controller - MVC と MVVM の違いは何ですか?
標準の「Model View Controller」パターンと Microsoft の Model/View/ViewModel パターンに違いはありますか?
mvvm - MVVM - リージョンでもある ViewModel?
ItemsControl である「DataRegion」があります。それに ViewModel を追加し、DataTemplating を介してビューをレンダリングします。
私の質問は、この ItemsControl には、アイテムのメニューにコマンドを設定するためのロジックが必要だということです (ロジックはアイテムの数に依存するため、自分でそれを行うことはできません。つまり、常に 1 つのアイテムが表示されている必要があります)。 )
ViewModel にしたいのですが、インスタンス化してアイテム コントロールに関連付ける方法がわかりません。
領域がエラーをスローするため、項目コントロールにバインドできません。私はそれをシェルにプロパティとして追加しました。現在、領域ビューにアクセスして、制御する必要がある子ビューモデルにアクセスしています。
より良いアイデアはありますか?
wpf - wpfリストビューをバインドした後にすべてのアイテムを選択する
次の XAML があります。
アイテムのリストをバインドするとうまくいき、チェックボックス付きの美しいリストビューが表示されますが、すぐにすべてを選択したいと思います。ListView には SelectAll() メソッドがありますが、いつ呼び出すことができますか? DataContextChanged は、DebitOrderItems を設定する前にリンクすると機能しません。
silverlight - この Silverlight MVVM の例で ModelView をモデルに接続するにはどうすればよいですか?
Silverlightで独自の MVVM の例を作成するための基礎として、Silverlight の Model View View-Model (MVVM)という記事を使用しています。
私は以下のすべての部分を持っています:
- メインページ(すべてをロード)
- 表示(バインディングを含む XAML ファイル)
- モデル(偽の List コレクションを生成する Customer クラス)
- ModelView (INotifyPropertyChanged を継承し、View が必要とする 2 つのフィールドの PropertyChanged を持っています)
私のメインページでは:
- ビューモデルを作成する
- ViewModelをViewのDataContextにバインドする
- モデルの作成(顧客)
しかし、ModelView をモデルに接続するにはどうすればよいでしょうか。どうにかして CustomerViewModel に顧客のモデルを挿入する必要があるように感じますが、そうですか? しかし、どのように正確に?この MVVM の例を完成させるための次のステップは何ですか。これにより、MVVM パターンの利点を使い始めることができます。たとえば、モデルをテスト モデルに交換したり、ビューを新しいビューに交換したりします。
MainPage.xaml.cs: ViewModel を作成し、View を ViewModel にアタッチします。
MainPage.xaml: メイン ページのコンテキスト内でビューを表示します。
CustomerViewModel.xaml: ビューモデル
CustomerHeaderView.xaml ビュー
モデルのCustomers.cs
wpf - WPF TextBlock の動的な太字と斜体の部分
私はMVVMパターンを使用しており、ModelViewに文字列型のプロパティがあります。
文字列には、次の HTML タグを含めることができます。
TextBlock 内のテキストの特定の部分を通常、太字、または斜体にする必要があります。
現時点では、次のように機能するヘルパー メソッドである回避策を作成しました。
HTML 文字列を部分に分割します
Run クラスのインスタンスを作成します
タグに応じて、FontWeight または FontStyle プロパティを設定します
Run クラスのインスタンスを TextBlock の Inlines コレクションに追加します
このソリューションは機能しますが、MVVM パターンと互換性がありません。
Convertors を使用することを考えていましたが、TextBlock のどのプロパティにバインドすればよいかわかりません。
この問題はどうすれば解決できると思いますか?
c# - MVVMを使用したWPFの足場?
WPFを使用したMVVMを考慮して足場を作成することが可能かどうか(ユーティリティが存在する場合は??)誰か教えてください。
ここでの私の考えは、データアクセスフォームがたくさんあるようで、もちろんそれらをカスタマイズしたいのですが、最初はフォームを提供する簡単な方法、つまりすべてのコントロールをそれらに配置し、mvvm にバインドしたいと考えています??
多分私はたくさん尋ねていますか?
基本的に、フォームは自動的に作成され、後でカスタマイズして移動することができますが、最初は機能するだけでした。
足場 - Web 開発から用語を盗んでいますが、wpf にはまだ存在していると思いますか?
何か案は?
.net - コマンドとイベント ハンドラーを使用した WPF MVVM
私はMVVMのパターンが好きで、使い始めるとハマってしまいます。
完璧な世界では、View のコード ビハインドはほとんど空 (おそらくコンストラクター内のコード) であり、View のあらゆる側面が ViewModel から操作されていることを私は知っています。
ただし、ViewModel で新しいフィールド、プロパティ、コマンドを作成すると、イベント ハンドラーで同じことを実装するよりも多くのコードが作成される場合があります。
現時点では、次のルールに固執しています。
イベント ハンドラー コードがビューのごく一部を操作する場合 (たとえば、ボタン クリック イベント ハンドラーが同じビューにある特定の TextBlock のフォントを大きくする場合)、イベント ハンドラー内にロジックを実装してもかまいません。ただし、View がビジネス ロジックを操作したり、View の外部にあるリソースにアクセスしたりする必要がある場合は、これらの責任を ViewModel に割り当てます。
私のアプローチについてどう思いますか?
イベント ハンドラーと ViewModel を使用するときに避けるべきことは何ですか?
MVVM パターンを使用する際に推奨できるベスト プラクティスは何ですか?