WPF(.NET, WinUI) GUIプログラミング Part31

レス数が950を超えています。1000を超えると書き込みができなくなります。
2023/01/22(日) 05:53:16.97ID:oY263ilm
WPF(Windows Presentation Foundation)について語るスレ。

前スレ
WPF(.NET, WinUI) GUIプログラミング Part30
https://mevius.5ch.net/test/read.cgi/tech/1667010874/

関連スレ
Windows 10 UWPアプリ開発Part 3
https://mevius.5ch.net/test/read.cgi/tech/1627556967/

コードを貼る場合は以下のサイトの利用をお勧め。
https://ideone.com/
854デフォルトの名無しさん
垢版 |
2023/08/31(木) 07:06:57.56ID:BoGIe8nI
>>845
変な理解しているな。
ViewModelでBitmap加工などは普通にやる。 当然、System.Windowsをusingする。
Viewのエレメントに直接アクセスするなという事だけ。 いわゆる委譲だな。
例えば、Viewにパラメーター渡すために、IxxxViewRepositoryインターフェースをViewに継承させ、そのレポジトリをViewModelにインジェクションすればそれでOK。
ContainerのChildrenは、ViewModelにダイナミック生成バインドできないので、Add、Remove、Move操作をそういう方法でやる。
DDDなどのクリーンアーキにチャレンジしてみれば、その辺はインチュイティブに理解できるようになるよ。
2023/08/31(木) 07:56:35.25ID:UxD03clT
>>853
そもそもviewmodelってviewとmodelをつなぐ役割をするものじゃないんですかね
別に対応するviewなんて何も無いただデータとそのメソッドを持つだけのクラスをviewmodelと言えるんでしょうか
2023/08/31(木) 11:36:17.81ID:GMvg4a1K
https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/stable-channel#version-14

うんこ品質の時間です
突然1.4がリリースされやがった
9月末が予定じゃなかった?
2023/08/31(木) 12:07:44.06ID:+9swg57/
>>854
それ、すごい労力かかる割にはWPF専用のViewModelになっちゃうじゃない。
いまUIライブラリ移行の過渡期なんだし、再利用できるViewModelとか考えないの?
2023/08/31(木) 12:40:08.29ID:k/7LWfvb
>>855
俺の理解が間違ってるかもしれないけど、
その Circle クラス?が画面上の円のコントロールかなにかの DataContext になってるなら ViewModel であるといえるんじゃないだろか。
画面上のどこにもバインドしてないんなら違うと思うけど。

例えば ListBox の ItemsSource にバインドするコレクションの各要素の型は ViewModel と言えると思う。
ListBoxItem を 1つの View として見た時にその DataContext になるから。

↓これとか ItemViewModel というのを定義してる。
https://blog.okazuki.jp/entry/2016/04/08/233620
ItemViewModel
2023/08/31(木) 13:22:03.44ID:WwAx/vtc
viewmodelはmodel用のviewじゃなくてview用のmodel
各種viewmodelでcircleモデルのview用の変換やviewからの入力に対してモデルとの橋渡しをする場所としてvmcircleを作ってるんならまあ理解できる
2023/08/31(木) 14:00:23.53ID:+wESSzqb
何なら納得するんだろうか?

画面に複数のタブページがあるアプリがあって
メインVMに複数のタブページ用のVMがリストなどで持たれている(直接のモデルじゃなくて)

これでおかしいと思うのかどうか
2023/08/31(木) 15:36:13.08ID:KSwuKB63
XAML Islandsとか名前がよくない
絶海の孤島のイメージだ
2023/08/31(木) 15:53:03.73ID:A6umWt5F
Islandsで孤島?
2023/08/31(木) 16:07:40.97ID:qE8kvwKZ
複数形だから孤島ではないな
864デフォルトの名無しさん
垢版 |
2023/08/31(木) 16:52:36.04ID:BoGIe8nI
>>857
VieModelの再利用?
再利用するのはViewの方であって、ViewがViewModelへのバイディング権がある。
それで、フレキシブルな画面構築ができる。
ロジックの再利用は、Domain層にまとめる。
2023/08/31(木) 17:36:52.11ID:+9swg57/
>>864
ん?例えばMAUIとかWASMに移植するときはViewModelを全部作り直すってこと?
大変じゃね?っていうかそれってMVVMじゃなくね?

MVVMって画面とロジックの分離であって、画面が変わるたびに作り直さなくちゃいけないなら
それはViewModelではなくViewの範疇では?
2023/08/31(木) 18:44:34.81ID:+wESSzqb
ViewModelはviewとmodelの間が互いにデコボコしてて
綺麗にくっつかない場合に間に入るつめもの

もともときれいにくっつくなら不要

Viewが変わればまた形に添ったViewModelが必要になる
2023/08/31(木) 19:17:40.59ID:0zAKJthF
クライアント側にあるView層にViewとViewModelがある
サーバー側にModel層があって自分の場合はREST full APIで作られたSaaS出ある場合が殆ど
業務ロジックはModel層内に全てあるので再利用可能
2023/08/31(木) 19:22:25.33ID:0zAKJthF
View層にはWPFを動作させるための処理しかない

View層をReactで作ってもそこにあるのはReactを動作させるための処理しかない

業務ロジックは全てサーバー側にあって全く無駄にはならない
2023/08/31(木) 21:51:01.50ID:lnQo2el+
>>762
今思いついたんだが「sugar dragonfly」はどう?
2023/09/01(金) 16:45:19.11ID:ba1FgNHl
機器の通信サンプルアプリをWPFで作るのは有り?
サンプルを参考にする相手がWPFを使ってるかわからないから、WinFormsの方が無難かな?
一番無難なCUI版は出来たからコアの通信部分は変わらなくて、通信結果を見やすくするだけなんだけども
2023/09/01(金) 17:16:03.23ID:E0s4hvcN
ActiveXでExcel VBA対応するのが無難だな
2023/09/01(金) 19:47:27.67ID:+613Qa0i
>>866
それはVMじゃない。どっちかというとMVCのCに近い。
2023/09/01(金) 21:56:19.74ID:42muqi3u
>>866の説明はCよりVMよりだと思う
VMはModelを特定のView用に変換した状態を持っておくもの

MVC
Vーーーーーーーー 監視 ーーーーーーー>M
Vーーー入力ーー> C  ーーー入力ーー>M
V<ーーーーーーー 通知 ーーーーーーーーM

MVVM
Vーーー監視ーー> VM ーーー監視ーー>M
Vーーー入力ーー> VM ーーー入力ーー>M
V<ーー通知ーーー VM <ーー通知ーーーM
2023/09/01(金) 22:06:47.51ID:XOi5r4E6
みんなめちゃくちゃだな..
2023/09/01(金) 22:16:55.21ID:+613Qa0i
>VMはModelを特定のView用に変換した状態を持っておくもの

なにその珍解釈
2023/09/01(金) 22:33:11.78ID:dq5C6mfu
一人だけ俺様理論がおるな
2023/09/01(金) 22:55:04.64ID:86UzGWyS
みんなVIEWを差し替え差し替えでMODELを流用することやってるの?
2023/09/01(金) 23:31:31.63ID:hl1Bipr4
いや全然
2023/09/02(土) 00:18:16.99ID:fOS98KnE
自己満ですなーー
WPFのMVVMがまさに究極の自己満

MVVMとかvue.jsとかangular、androidとかでも普通に使うし
そっちは実装コストもかからん
2023/09/02(土) 05:21:08.01ID:6VujaKd3
android studioはwindows formのポトベタと同じ感覚なんだが?
881デフォルトの名無しさん
垢版 |
2023/09/02(土) 08:18:23.73ID:Fau+Wvgs
>>877
モニターアプリでは良くやるよ。
化学プラントの製品毎の画面やライン管理の製品毎の32~4096接点モニターとかね。
モニターと非常停止等の共通アクション画面なら流用する。
ただし、Viewのビハンイドコードトリミングは必要。
それらを再利用というには微妙だな。 VMはペアで消費するものと考えるのが普通。
再利用というのはロジックの再利用を言うのが一般的じゃね?
2023/09/02(土) 09:33:36.47ID:fwdoqn2z
結局VMに何らかの描画以外のロジックを書いてる人が多いんだろうなと
mvvm原理主義者じゃなければ別に好きなようにしたらいいんだが

WPFは結局どのように実装すべきなのかハッキリとしたパターンが確立されなかった
これが一番の問題だった

明確に役割分担してオブジェクトの生死を適切に管理してる人間がどれだけいるのか
2023/09/02(土) 09:49:03.02ID:fOS98KnE
>>875
あってるぞ
MをVに表示させる為に必要な形に変えたものだ
例えばM(Web APIのResult)をVM(Vにバインディンク可能なデータ型)に変換してVと接続する
2023/09/02(土) 10:06:25.37ID:fwdoqn2z
状態と言う意味が通じていないので話をしても無駄

v vm mでそれぞれ状態は持ってる
普通はmの状態のことを話すんだけど双方の話がかみ合っていない
2023/09/02(土) 10:12:13.25ID:fwdoqn2z
本来はMと全層から利用されるビジネスロジックが主体なんだけど
vmでガッツリロジックなり制御なりのコード書いてる人が多い

そういう人から見るとvmは状態を持っていると言う主張になる
886デフォルトの名無しさん
垢版 |
2023/09/02(土) 10:21:43.71ID:Fau+Wvgs
>>882
だね。
ViewModelはインスタンスプールの場という認識が無いとそうなるね。
Bitmap加工にしても、ロジックは別の層に置くもの。
ロジックはDomain層、ドライバーはInfrastructure層でカキコしておけば再利用というスタイルの本筋が見えてくる。
2023/09/02(土) 10:42:05.01ID:ePvjWEyO
wikipediaだとこうだな。VMはVが表示すべき状態を保持するというのが普通の理解だと思う。

ViewModel
ViewModel(ビューモデル)はViewを描画するための状態の保持と、Viewから受け取った入力を適切な形に変換してModelに
伝達する役目を持つ。すなわちViewとModelの間の情報の伝達と、Viewのための状態保持のみを役割とする要素である。
2023/09/02(土) 10:53:39.97ID:UWvP69T4
という事はバリデーションもvmじゃなくてmでやるの?
2023/09/02(土) 11:59:17.23ID:+7egXD0v
>>887 の定義だとちょっと密に思えてしまうな


https://learn.microsoft.com/ja-jp/dotnet/architecture/maui/mvvm

大まかに言うと、ビューはビュー モデルを "認識" し、
ビュー モデルはモデルを "認識" しますが、
モデルはビュー モデルを認識しておらず、
ビュー モデルはビューを認識していません。
したがって、ビュー モデルではビューをモデルから分離させ、
ビューとは独立してモデルを進化させることができます。
2023/09/02(土) 12:40:51.82ID:CPf5VJuY
君たち一旦モデルの事はわすれろよ
めちゃくちゃすぎる
2023/09/02(土) 13:16:00.96ID:CPf5VJuY
>>882の言うようにハッキリとしたものがないと同意した上で言わせてもらうが
>そういう人から見るとvmは状態を持っていると言う主張になる
VMは状態をもつ

めちゃくちゃすぎる
普通に状態を持つ
2023/09/02(土) 13:18:09.94ID:fwdoqn2z
アプリケーションの真の実態はMなんだから忘れることじゃないな
勘違いされがちだけどMはデータ置き場でもライブラリでもないアプリケーション本体

VMは表層でしかない
メッセージの仲介所
上で書かれたインスタンスプールでもない
仕事をするにあたりただどこかにあるモデルへの参照を持っているだけ

ModelAとModelBを参照して計算してModelCに入れるのはVMの仕事ではない
VMはMに単純なメッセージ飛ばすのが仕事
2023/09/02(土) 13:35:29.82ID:CPf5VJuY
ロジックを単にロジックと表現したりするとこみると
ロジックをビジネスロジックとプレゼンテーションロジックに分けて
考えてないよね

ここで>>882のじゃあ明確なその区別のルールは?って問題が出てくるが
2023/09/02(土) 13:44:31.42ID:fwdoqn2z
どうも自分の書き込み全体じゃなくて部分的な文章しか見てもらえてない気がする

>>884とかガン無視されてる
2023/09/02(土) 13:46:57.02ID:fwdoqn2z
あ、vmが状態を持つのはそのように書いたからであってあまり意味はない
適切なのかどうかは知らない
2023/09/02(土) 14:04:49.20ID:CPf5VJuY
でも>>892の見ると、君完全にFatModelの某riga◯◯氏の主張だよね
2023/09/02(土) 14:09:38.75ID:fwdoqn2z
>>896
誰それ?
VMは可能な限り薄くすべきだよ
2023/09/02(土) 14:19:20.78ID:CPf5VJuY
>VMは可能な限り薄くすべきだよ
いやいや、ViewModelは作る画面をモデル化したものだから
それは作る画面次第だから
VM薄くするために要件にまで介入する気なの?

(もちろん、VMに限らずスパッゲッティ排除したりすることはいいことだが)
2023/09/02(土) 14:32:46.57ID:Opj29vAW
>>888
サーバー側でも結局必要になる処理なんで
バリデーション機能を提供するWebAPI定義してそっちでやってる
パフォーマンスもローカルでやるのと変わらん

自分設計の案件は
小計行の合計値など画面に表示されるものほぼ全てサーバー側での計算値だ
2023/09/02(土) 14:40:30.69ID:CPf5VJuY
>メッセージの仲介所
>デコボコしてて綺麗にくっつかない場合に間に入るつめも
これが先じゃないんだよ
例えば、学生を扱う時に「Student」クラス作ってNameとかAgeとか
状態持たせて「モデル化」するのと同じように

作る画面を同じように状態抜き出してロジック与えて名前を
付けたものがViewModel

こっちが先
2023/09/02(土) 14:48:44.91ID:CPf5VJuY
で、ViewModelの実装において画面が複雑なら、ビューモデルに書くプレゼンテーションロジック
が複雑になるし、Modelにドメインロジックの実行を依頼したりする

だから、
>メッセージの仲介所
とか表現が極端すぎる
ViewModelは画面をモデル化したもので、立派に独自のプレゼンテーションステート
やプレゼンテーションロジックも持つ立派な1つのエンティティです
2023/09/02(土) 15:38:06.62ID:5BMaIqoW
>>900
>作る画面を同じように状態抜き出してロジック与えて名前を
>付けたものがViewModel
作る画面(View)のもとになるのがModelなのでその過程をどの程度意識しているかどうか
言い換えればViewを所与のものとして受け取っているかどうかの違いでは?

それ以外の点はほぼ賛同できる
2023/09/02(土) 16:13:13.84ID:ePvjWEyO
>>902
>作る画面(View)のもとになるのがModelなのでその過程をどの程度意識しているかどうか

アプリケーションの実装はそう考える場合があるかもしれんがMVVMパターンとして
MとVMにそういう関係があることを求めてはいないと思うがな。
2023/09/02(土) 16:37:06.13ID:CPf5VJuY
>>903
いいこというね
>>890のモデルを忘れろってそういうことなんだわ
ViewModelはあくまでも作る画面をモデル化しておとしこんだのであって、
その作る画面がどのModelが元になってるか関係ないんだわ
2023/09/02(土) 17:02:01.28ID:fwdoqn2z
自分でロジックブーメラン投げて刺さってるし触れるだけ無駄なんだなと

ヒマつぶしにriga○○が何なのか調べてみたけどわからなかった
更に調べるとかなり前から懐かしのugayaのことをrigayaと言ってる人物がいる
多分この人なんだろう

rigayaと言うのは別人がいてNVEncの作者
2023/09/02(土) 17:08:17.47ID:CPf5VJuY
>>905
ごめんごめん
rigayaはNVEncの作者でugayaのほうか悪かった
2023/09/02(土) 17:18:55.85ID:fwdoqn2z
ロジックブーメラン
2023/09/02(土) 17:35:30.95ID:CPf5VJuY
何、しつこく
それも謝ってほしいのか?
すみませんでした
2023/09/02(土) 17:45:52.02ID:ePvjWEyO
なんの話をしているんだろうと思ったがこれか?
https://ugaya40.hateblo.jp/entry/model-mistake
2023/09/02(土) 17:57:45.40ID:CPf5VJuY
そうそれ
全部Modelに押し込めってことか?って事で
FatModelって勝手に呼んだけど

完全な正解はないから俺も含めてみんなおれおれMVVMを信じるだけw
2023/09/02(土) 18:42:57.12ID:ePvjWEyO
俺も>>909はVMの要件とは思わんな。
ただ、V→VM→Mというクリーンアーキテクチャで考えるならMからVMへの依存性逆転に使うインターフェースは
M側に含めることになるかな。それが「Modelの影」にあたるのかもしれんが。
言葉としては違和感があるな。どっちかというと「Viewの影」の方がしっくりくる。
2023/09/02(土) 22:11:29.82ID:fOS98KnE
「Viewの影」か...

VMにはMからの応答データ以外にも
カレントフォーカスやら
リスト系入力コントロールのカレントインデックスやら
入力コントロールの変更前値なども保持してるね
これらはMではあまり取扱かわない
913デフォルトの名無しさん
垢版 |
2023/09/03(日) 18:43:28.44ID:PKYmB8Sw
>>911
Mにインジェクションはまずくね?
そもそも、EntityやModelは定義とロジックが入るクラスで、かつ、Domainに属するクラス。
ViewとViewModelはApplicationレイヤー。
Domainとは、外部参照ができない領域で、そこにPropertyインジェクションはリスクを覚悟した使い方。
何事もトリッキーが必要になる事はあるが、SOLID原則は可能な限り守るべき。
2023/09/03(日) 18:47:29.66ID:McvOhRnv
この5chブラウザって実行できねぇじゃねぇかよ
とりあえずWindows 11 ProのSandbox環境立ち上げて
実行してもSeach app in the store?だっけ?
とダイアログが出て実行できねぇ
.NET 7のランタイムとかいれてもだめやわ
だるっ
2023/09/03(日) 19:07:48.99ID:Zxyqi4pM
>>93
>Mにインジェクションはまずくね?

どこからそんな解釈が?
2023/09/03(日) 20:37:38.19ID:TWuH3asg
本来のMVVMだとVMがMに命令を出してその結果をVMのプロパティーに反映だが
コレクションはMに無いとどうにもならないし、それをVMがリダイレクトする
この時点で初期のVMMVは破綻しているよな
2023/09/03(日) 21:08:54.26ID:0JPdNbB1
デザイナーとプログラマーと別けてやるならそうだか、自分一人でやるんならマイルールで頑張れば良い。他人は他人、気にせずに行こう!
2023/09/03(日) 21:16:42.81ID:Zxyqi4pM
>>916
>本来のMVVMだとVMがMに命令を出してその結果をVMのプロパティーに反映だが

本来のMVVMと言うが、MとVMのやり取りにおける役割分担ってそんなに明確に定まったものはないと思うが。
2023/09/03(日) 22:05:14.34ID:Dhh2faXN
【クライアント側】
View (WPF)
ViewModel(WPF)
Model(c#, 業務ロジック以外のロジック、例えばUI処理に必要なロジックなど)
【サーバー側】
Model(c#, 業務ロジック)

みたいに実際はクライアント側にもModelが必要になる事が多い
2023/09/03(日) 22:46:24.33ID:TWuH3asg
>>918
創世記の頃はさっき書いたようなのだったが、ビジネスロジックをほぼ全てMに書く派閥ができてカオスになった
あと、ReactivePropertyでMから簡単にリダイレクト出来るようになったのも大きい
2023/09/03(日) 23:12:27.45ID:3gQjLtaF
今時はPropertyChanged.FodyやObservablePropertyで自動化
便利になりました
2023/09/03(日) 23:49:15.10ID:Dhh2faXN
クライアント側やクライアント側にもModelが存在しえるが
ここにはUI要素が殆どなく(あったとしても抽象化されている)
WPF以外からも再利用が可能だ

ViewModelは特定のView専用に実装されており
異なる種類のViewの実装から再利用する事は望めないのが普通だ
2023/09/03(日) 23:50:04.10ID:Dhh2faXN
訂正)サーバー側やクライアント側にもModelが存在しえるが
2023/09/04(月) 01:14:09.52ID:vsxnPNVu
VewModelはViewの構成要素(データやコマンド)には依存するけど実装には依存しないでしょ
2023/09/04(月) 19:44:13.60ID:J0Btfpeo
昔SilverLightと言うのがありまして…
2023/09/04(月) 19:56:38.46ID:1eoZIF84
光ちゃん好き
2023/09/04(月) 20:00:29.56ID:fuW/8CV2
M、VMはそのままで、VをWPFでもUWPでもUnoでもMAUIでもコマンドプロンプトでもまだ存在しないビューにしても成り立つのが理想のMVVM

まあ本体のバージョンやらなんやらで制約受けるんだけども
2023/09/04(月) 22:51:14.61ID:7E+/PPwt
>>927
機種やOS依存しないのはMだけで、VMはWPFからWinUI3に変わるだけでも作り直し
Win32とWinRTは名前空間が別だ
2023/09/04(月) 23:30:01.70ID:J0Btfpeo
前からいるVMは作り直さなくてもいいと言う人は実際に使ってない気がするんだな
2023/09/05(火) 05:52:19.52ID:DX9vicfo
Vが変わったらVMも作り直しとかそもそもお前のはMVVMじゃないぞ
931デフォルトの名無しさん
垢版 |
2023/09/05(火) 20:28:59.35ID:qu07bRnx
MVVMでは、Modelはただの定義であって、それがどこにあろうが、ローカルインスタンスはViewModelにある。
ModelインスタンスはViewにバイディングされるが、Model管理はサブスティチューターやインタラクター等の中間介在者経由で行う。
Modelにインジェクションは、中にパーサーを持たせ、ファイヤーや他にアソシエートさせるという事だろうが、それは、再利用性を損ねる事になる。
MVVMは見かけはMVVMだが、実際には、疎結合実現のために、取り巻くサービスから構成される。
2023/09/05(火) 21:33:41.74ID:s337iXA9
お前の中ではな
2023/09/05(火) 21:50:07.00ID:vxLs2+zd
ここに限らずプログラマー板は全般的に設計の話題になるとグダグダだよね
2023/09/05(火) 22:14:49.56ID:FTgFHkq3
もう今はMFC/WinForms/WPFという過去の遺産グループに一括りにされる時代なのよね
WPFはなんていうか、オーパーツを発掘してる気分、腐ってやがる早すぎたんだって
2023/09/05(火) 22:47:35.31ID:vcpA6cRm
何が言いたいのかさっぱり
2023/09/06(水) 05:28:15.62ID:CIPjTMvR
結局プログラム言語とかプログラミング作法じゃなくてアイデアなんだよな。
それをセンスと言うのかな?
MVVMはオートメーションの作法なんだよ。
俺は機械作業の一部になりたくないな。
2023/09/06(水) 06:00:45.77ID:aEV5JQPD
ViewModelの再利用性なんて無限のコストをかけていいならいいけどさ
円周率を表示するアプリがあって3.14と表示するかおよそ3と表示するか画像取り込んで表示するかなんて
Viewの仕様次第でいくらでも膨らむのにどうやってViewModelの再利用性を決めるんだ?
2023/09/06(水) 06:51:57.86ID:CIPjTMvR
UIは変化(進化)するWindowsとandroidも違うし、あと数年でMVVMなんて有ったなぁとなるかも知れない。昔の構造化とか。
939デフォルトの名無しさん
垢版 |
2023/09/06(水) 09:12:10.70ID:UTcPybKQ
MVVM言いたいだけ
2023/09/06(水) 09:46:23.58ID:iXwPGoYi
おののののか
みたいな?
2023/09/06(水) 09:47:40.27ID:gzG1FQ5Q
>>937
さすがにその例なら再利用するだろ
なんで一から作り直すんだ?
2023/09/06(水) 11:09:07.24ID:EbyA7lxn
データをどう見せるかなんてViewのシゴトだしな
コードビハインド書きたくないとかはワガママだ
2023/09/06(水) 11:35:08.73ID:Hs78urxK
>>942
それな!
本来Vのコードビハインドに書くものを外だししただけでこれがVMとか言っちゃうのが多すぎる。
>>937とかその典型。それに再利用ってのは本来将来のコストを下げるためにやるもの。
半端もんは口出さずに100万年ROMってろってこった
2023/09/06(水) 11:44:28.70ID:CARezZ1i
あくまでも個人の感想です。
2023/09/06(水) 11:57:04.90ID:jZLgLXW4
VMはVに依存する=WPFならWPF専用になる
汎用クラスだけでVMが書けない以上不可能なんだよね
2023/09/06(水) 13:38:44.54ID:d8gQVss7
MVVMじゃなくてViewとModelだけのVMパターンだね
2023/09/06(水) 19:08:19.79ID:49e0pxsZ
最終的にはそういう事
m vm vをどうしても二つのグループに分けると
v vm とmグループになる
vm再利用とかありえない
948デフォルトの名無しさん
垢版 |
2023/09/06(水) 20:03:38.91ID:R922v4XL
>>946
だね。 
V+VMはペアで中味はトリッキーでもなんでもご自由にどうぞ。
V+VMとMの関係がアーキテクトの骨子。
2023/09/06(水) 20:08:53.79ID:ZnJznt7P
WPFのはMVVMというよりblandパターン
MVVMとは関係ない実装がVMに多すぎ
2023/09/06(水) 21:58:31.52ID:H3c+Isko
blandパターンって何やねん
2023/09/08(金) 20:01:30.51ID:xsuhKaXw
WPFはパフォーマンスでないねぇ
UI仮想化しないと初期表示がくっそ遅いし、仮想化するとスクロールがガクガクする
WebViewを試してみるか
2023/09/08(金) 20:04:01.88ID:uWWTBRXF
>>951
WPFからReactに移ったときWeb速や!って思た
2023/09/08(金) 20:57:27.63ID:AJzWVUJo
WPFってそんなやべぇやつだっけ?
昔、UWPアプリで、6年くらい前のスマホSoCのatomのタブレットでスクロールちょっと重いなと
格闘した記憶あるけどデスクトップPCやろ?
2023/09/08(金) 21:01:43.66ID:AJzWVUJo
UWPアプリのしたらばリーダーみたいのMicrosoft Store
になかったけ?
それでスクロール試してみん
サムネイル画像の表示とかもやってたはず
レス数が950を超えています。1000を超えると書き込みができなくなります。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。