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

■ このスレッドは過去ログ倉庫に格納されています
2021/09/19(日) 18:43:39.82ID:9XIs1/Nq
WPF(Windows Presentation Framework)について語るスレ。

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

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

コードを貼る場合は以下のサイトの利用をお勧め。
https://ideone.com/
2021/12/14(火) 22:54:01.86ID:GyJmmLrf
.net nativeが御存命なら何も問題なかったのにな
2021/12/14(火) 23:26:27.41ID:mEb6s25z
>>419
ありがとうございます、試してみます。
ちなみにWPFで難読化かけると、バインディングなどリフレクションで解決する変数をpublic以外にすると
難読化されて変数名が変わってしまい上手く動かなくなるなんて弊害もありました。
422デフォルトの名無しさん
垢版 |
2021/12/15(水) 04:02:26.72ID:wG9epGnM
なんでネイティブアプリ作らせようとしないのか不思議だよなあ
423デフォルトの名無しさん
垢版 |
2021/12/15(水) 04:12:08.01ID:wG9epGnM
>>399
1.0には安定板と実験版の二つがあるんだよ
424デフォルトの名無しさん
垢版 |
2021/12/15(水) 08:31:36.35ID:PgExgZMT
>>418
SPAってまだ息してるの?
2021/12/15(水) 10:17:12.13ID:VvTx19R8
>>424
今時WebサービスはSPAだらけだぞ
SPAが出始めた当初の、一昔前でいう全面Flashのクソサイトみたいなイメージのままで止まってるんじゃない?
意外に普通のサイトでも普通に使われていて、もはや全く特別なものではなくなっているし君も気付いていないだけ
2021/12/15(水) 12:24:42.77ID:UffDh3f0
>>422

「一般人には"難しい"インストール作業が必要」だからでしょ。
2021/12/15(水) 14:37:16.07ID:rLyo7YcO
>>426
zipファイルを右クリックして展開、中のexeをダブルクリックするだけ
2021/12/15(水) 15:15:38.62ID:SBRyNeAi
>>427
それだとダウンロードしたファイルの実行許可みたいな処理をしないと起動しないな
429デフォルトの名無しさん
垢版 |
2021/12/15(水) 19:11:55.55ID:samTlIw/
MSIX「…」
430デフォルトの名無しさん
垢版 |
2021/12/15(水) 23:20:46.31ID:l+MEhncN
>>415
これマジで言ってんだったらヤバいなw
431デフォルトの名無しさん
垢版 |
2021/12/16(木) 15:14:01.42ID:8t4kYEOd
>>415
ウン千行のMainWindow.xaml.csでも量産してるのか?それともpartial祭り?
432デフォルトの名無しさん
垢版 |
2021/12/16(木) 15:26:56.21ID:GwGlfrLa
モデルを再利用しないならぶっちゃけ全部ビューに書いた方がメンテしやすいよね
2021/12/16(木) 15:41:48.28ID:UhnplqTN
>>432
VMは作る必要ないが、切り出せる処理は可能な限りModelに切り出したほうがメンテしやすいだろ
2021/12/16(木) 18:59:05.09ID:/RlPdQ27
MVVMか・・・ 
ドメイン駆動開発には必須だが、カスタムコントロールをListView->GridViewにDataTemplateで埋める時なんか、
DataContextがListViewのItemSpurceに固定されて二段階ペアレント遡りとかマンドクセーんだよな。
コードビハインドでやった方が簡単だし速い。
2021/12/16(木) 19:23:49.46ID:SXRV0mKl
>>434
一度React等の1-way dataflow系のUIフレームワークに触れてみることをお勧めする
MVVMなんかに戻る気しなくなるぞ
2021/12/16(木) 20:52:20.35ID:0keLIzjB
この件に関しては何であるかは関係ないだろ
XAMLがそうなちゃってるだけでflutterや他のフレームワークでMVVMやれば>>434の件とか自由にできるだろ??
437デフォルトの名無しさん
垢版 |
2021/12/16(木) 21:17:28.50ID:y2oCKs8P
VMがあるがVMは最小限にして他はコードビハインドに書くという新たなるデザインパターンを発見してしまった
2021/12/16(木) 21:20:43.02ID:P4pOcLuS
pythonに描かせたチャートを表示する方法おしえてください
2021/12/16(木) 23:10:25.71ID:mP79z56f
Reactは俺も使ってるが、WebアプリもWPFみたいに開発できたらもっと楽なのにと思う。
2021/12/16(木) 23:13:42.48ID:Uw3UXkCr
>>439
Vue.jsとか使えばjs+MVVMで開発出来るでしょ
2021/12/16(木) 23:16:19.34ID:Qqw3hXVf
React使えてなさそう...
2021/12/16(木) 23:18:07.78ID:Qqw3hXVf
もう10年ぐらい前から
backbone.jsがmvvmしてますよ
2021/12/16(木) 23:21:39.31ID:el7qs11a
winformみたいに楽に開発できるようにはなりませんかね。
444デフォルトの名無しさん
垢版 |
2021/12/17(金) 04:23:59.46ID:FDMn0ZP0
どこが難しいのかわからない
やろうとしてないだけじゃないの
2021/12/17(金) 06:23:40.15ID:FEmDTE20
>>444
難しいじゃなくて、
めんどくさいんじゃねーーの?
2021/12/17(金) 07:31:09.67ID:k0KpTC0i
Electronオワコンの兆しが見えてきた
447デフォルトの名無しさん
垢版 |
2021/12/17(金) 07:49:25.07ID:vC3aJ6Ce
VSCodeがある時点でWPFよりオワコンじゃないんだが
2021/12/17(金) 08:06:23.71ID:k0KpTC0i
そのVSCodeの元になったATOMがElectronを捨てた
2021/12/17(金) 08:24:08.08ID:QaySSAou
VSCodeはともかくATOMは💩だったからね
2021/12/17(金) 08:38:26.32ID:hyr8BiIA
>>437
VM最小限ではないだろうが、反応速度をトリミングしていけば、普通にそうなるんじゃね?
最初はActiveCommandやeventtriggerバインディングを駆使してストイックにビハインドコードを汚すまいとするが、
やっていくうちにBindingからeventへの悪魔が食指を伸ばしてくる。
Coreに必死でロジック入れまいとするが、DomainやInfrastructueから自然と入ってきて汚すDDDみたいなもんだよ。
2021/12/17(金) 09:24:17.02ID:8qM/JwoR
そこでWinUI3ですよ。x;BindでイベントをVMで処理できるし、のこりはサービス作ってVMにインジェクションすりゃ良い
1.0になって地雷が少々残っているものの動作は軽快になって実用的になっている
2021/12/17(金) 09:57:30.72ID:mQ3a9kDU
>>443
wpf使えばwinformよりは楽に開発できる
2021/12/17(金) 10:56:55.08ID:FEmDTE20
>>443
wpfでmvvm捨てれば同等までにはなる
2021/12/17(金) 11:15:05.40ID:OxYtcTfz
>>448
githubがMSに買収された時点でatomはオワコン決定だろ
2021/12/17(金) 12:20:14.61ID:tWB5K5S1
GitHub クローンで、Ruby on Rails から、Go へ移行しない、
GitLab が上場して、時価総額が2兆円!

だから、Go へ移行するGitHubは、2兆円以上の価値がありそう
456デフォルトの名無しさん
垢版 |
2021/12/17(金) 22:46:12.94ID:guv1lRQC
>>453
イベントドリブンごりごりで描くならWPFの方が劣るかな
GestureTextとか変なところで手間かかる
2021/12/18(土) 00:13:36.92ID:3vX4TQFs
>>456
そんな偏屈な所つつかれても...
2021/12/18(土) 06:16:02.64ID:gMZd/6Bt
>>443
>>453

>winformみたいに楽に

って言ってるんだからMVVMを使わないのは大前提。

WPFの方が楽。
同等レベルだったらわざわざWPF使う意味はない。
459デフォルトの名無しさん
垢版 |
2021/12/18(土) 09:04:39.30ID:hjFJ5hmV
Winアプリの構造がメッセージループである以上、
MVVMみたいに本末転倒で過度な抽象化をするとインピーダンスミスマッチでもっさりするのは必然
2021/12/18(土) 09:58:17.85ID:+il6Dckm
まぁ DomainのRepositoryが全てのSOLID原則の中心になっているようなものだからね。 抽象化で遅くなるのは仕方ない。
描画やIOディレイもっさりに関してはasync/syncやUser32.dllのPostMessge、WndProcで高速化しているのがハイスキル連中のテクニックとちゃう?
プロはリリース毎のコスト上昇にほとんどの神経を尖らしているので抽象化肥大は避けられない。 コスト上昇が飽和しなければ、プロジェクト崩壊している事になる。
MVVMはTDDの必須構造。
461デフォルトの名無しさん
垢版 |
2021/12/18(土) 11:12:55.77ID:lNPlbMFx
>>459
レスポンスを追求するならVに全て実装するのも最適解のひとつだよ
2021/12/18(土) 12:08:56.63ID:7vxJCvKi
賢そうに見えない話を続ける人達にあれがよいこれがよいと推されてもねえw
2021/12/18(土) 12:40:09.41ID:rMHGoE/h
>>462
もっと賢そうに見えない人がそんなこと言ってもねえw
2021/12/18(土) 12:45:09.73ID:5vur9Hw6
M(VV)M フォッフォッフォッ

賢い人ならバルタン星人に見えます。
2021/12/18(土) 14:38:05.82ID:TQAat0ge
ネットや本のサンプルコードはWinforms ばかりなのは楽だから
2021/12/18(土) 15:34:46.72ID:191O5ceb
たからmvvmはblend前提のアーキテクチャだから
blend使わない時点で...
2021/12/18(土) 15:36:40.23ID:191O5ceb
↑wpfのmvvmね

knockout.jsとかvue.jsのmvvmは結構使える
468デフォルトの名無しさん
垢版 |
2021/12/18(土) 15:41:06.33ID:sdZeToOe
mvvmがwpf特有のものだと思い込んでる人いそう
2021/12/18(土) 15:45:40.48ID:5vur9Hw6
大半は開発者はmvvmなんてどうでもいいと思ってる。
そして大半の開発者はWPFは面倒だと思ってる。
470デフォルトの名無しさん
垢版 |
2021/12/18(土) 15:57:58.52ID:sdZeToOe
付いてこれない奴はおいていくしかないわな
2021/12/18(土) 16:02:12.24ID:5vur9Hw6
切り捨て大魔王アップルと同じスタイルですな。カッコイイ
472デフォルトの名無しさん
垢版 |
2021/12/18(土) 18:07:20.87ID:eF5qVI2/
>>458
高DPI対応のレベルが全然違うわ
今から新しくWinFormアプリシステム作る意味は無い
2021/12/18(土) 18:25:17.90ID:moPm6mf8
>>472
高DPI 対応ですか…またやっかいなものが
GetDeviceCaps
がテキトーな値しか返してくれないし
2021/12/18(土) 18:47:28.71ID:sQyFW59x
4Kモニターが普及してきたし高DPI対応はもう必須やろなあ
2021/12/19(日) 11:19:58.43ID:O/qDX0wZ
そんなに優れたアーキテクチャーなら15年も鳴かず飛ばずで一体何をなさっておられたのでしょう?
2021/12/19(日) 11:38:32.30ID:kxTQmf/6
うちの周りだと普通にWPFで「いまさらForms?」みたいな雰囲気なんだけどそのへんの温度差がすごいな。
2021/12/19(日) 12:01:52.46ID:bFU6ZlAL
普通にwebでやれよ
478デフォルトの名無しさん
垢版 |
2021/12/19(日) 12:09:05.77ID:NtqS0yAI
うちの会社は逆だ
WPFなど使い物にならんと随分前に見限られてる
UIはネイティブが第一選択でそれが無理ならFormsだな
俺がWPFを提案したとき上司にそんな物プログラマーが一時の流行りに乗りたいだけですぐに廃れるって一蹴された
まぁ結果論だが上司が正しかったのかな
2021/12/19(日) 12:35:07.34ID:JBr0bC1G
一時の流行りすらなかっただろ…
480デフォルトの名無しさん
垢版 |
2021/12/19(日) 12:49:18.00ID:ZhDu//Ih
>>472
ボケボケのアンチエイリアスを高DPI対応と言われましても
2021/12/19(日) 14:10:26.84ID:dztrfhWF
>>478
当のMicrosoftがWindows10になってもOS標準のGUIをWPFに置き換えに失敗。
結局は非スケーラブルなWindows GDI残渣を片付けられなかった事で、
WPFへの支持も得られず、一足先にSilverlight 、Xamarinも終焉を迎えたもんな。
2021/12/19(日) 14:42:10.84ID:O/qDX0wZ
Xamarinは日本政府も採用してんだから終わってない
483デフォルトの名無しさん
垢版 |
2021/12/19(日) 15:02:09.45ID:4oJJoyOR
アメリカの圧力。
484デフォルトの名無しさん
垢版 |
2021/12/19(日) 15:06:41.74ID:uJG5wN6M
>>482
あれ反応したことないw
Xamarin採用に起因する不具合なのかね
485デフォルトの名無しさん
垢版 |
2021/12/19(日) 15:07:46.95ID:Dc9hXcN/
しっかしここまで「WinでGUIといったらこれ!」っていうフレームワークが存在しないのも凄いよな
どれも一長三短くらいなもの達ばっかりw

これじゃ初学者も何やりゃ良いか分からんだろ
2021/12/19(日) 15:08:45.41ID:S3M8NlfX
>>476
それが一般的なレベル。
デスクトップアプリを何で実装するかで技術レベルを測ってる企業もある。
今更Forms使ってれば最低レベルってことが一目瞭然だから。
2021/12/19(日) 15:18:47.00ID:JBr0bC1G
>>485
C++ならキラーアプリMS-OfficeのフィードバックのMFC、
C#なら高速で人気のあったVCLの後継、winformだった。

実績もなく机上の空論で実装された低速なWPFをMSが押さなければ混乱なんてなかった。
VS開発チームすら採用に難色を示した出来の悪さ。自慢は高DPI対応。
2021/12/19(日) 15:55:56.66ID:zx1ngvEK
今のマシンならWPFでも快適やろ
WinUI 3は今のマシンでも低速だけどw
2021/12/19(日) 15:58:09.64ID:/MVrxgMV
>>487
VS開発チームすら採用に難色を示したってどこの情報
2021/12/19(日) 16:08:10.00ID:3MHXzmFi
>>482
人脈が生きた結果だな
2021/12/19(日) 16:15:13.62ID:kxTQmf/6
>>487
ストアアプリやUWPは確かに混乱をもたらしたと思うがWPFとFormsは好きな方使えばいいんでは?
べつにそこ混乱する必要ないでしょ。
2021/12/19(日) 16:29:09.20ID:HjXxxksN
vs studioがwpf製だろ
493デフォルトの名無しさん
垢版 |
2021/12/19(日) 16:35:03.29ID:ZhDu//Ih
VS2010は出来が良かったな
2012以降余計な物が追加されてどんどん重くなっていって2017でリタイア
今じゃVSCodeに乗り換えた
494デフォルトの名無しさん
垢版 |
2021/12/19(日) 17:19:37.75ID:+uXvukWf
今後はWinUIになっていくだろうな
2021/12/19(日) 17:22:35.24ID:zx1ngvEK
前から思ってたんだがandroidのスレは過疎ってるのに
このスレ人だけはいるよな
俺はこの3,4年windowsアプリ作ってないがどうせお前らも似たようなもんだろ??
2021/12/19(日) 17:47:00.06ID:kxTQmf/6
それは業務によるだろう。
うちは今もWindowsとLinuxのスタンドアロンアプリとあとWebだな。他の部署はAndroidもやってるが。
2021/12/19(日) 20:37:19.88ID:BxjYQSi4
AndroidもiPhoneもWindowsアプリもWindowsドライバもやるよ
498デフォルトの名無しさん
垢版 |
2021/12/19(日) 20:50:56.23ID:ZhDu//Ih
>>497
全部Xamarinで書けそうだな
499デフォルトの名無しさん
垢版 |
2021/12/19(日) 22:22:25.98ID:nz0H3poH
>>480
フォントでしょ?
そりゃWindowsの問題であってWPFだろうがWinUIだろうが同じだろう
500デフォルトの名無しさん
垢版 |
2021/12/19(日) 23:06:28.26ID:Dc9hXcN/
>>495
うちは端末がWindows PCのシステムだからまだゴリゴリ書いてるよ
501デフォルトの名無しさん
垢版 |
2021/12/19(日) 23:09:34.77ID:Dc9hXcN/
>>493
VS2017の重さは確かに凄まじかったな
ただその後VS2019〜VS2021で大幅に軽量化されたから、暇な時に是非試してみて。第3世代のcore i5でもヌルヌルだったから驚いたわw
2021/12/19(日) 23:23:43.31ID:BxjYQSi4
>>498
ドライバは無理〜
2021/12/20(月) 00:33:56.11ID:6vdXMhXJ
>>493
2015から2017は軽くなった気がするけどな
504デフォルトの名無しさん
垢版 |
2021/12/20(月) 01:39:02.46ID:kEqHqymm
>>499
ジョブズがあの世から助走をつけて殴りに来るレベルw
2021/12/20(月) 08:47:29.77ID:vCurGMkT
>>501
今2017メインで使ってるけど特に重さを感じたこと無いが。
初期のバージョンは違うのか?
メモリ8GBでCore i5のノートPCだから開発機としては並かそれ以下だと思うが。
506デフォルトの名無しさん
垢版 |
2021/12/20(月) 12:41:10.05ID:I/CEEZL2
>>505
何世代のcore i5?ここ5年位のIntel coreシリーズなら重く感じることは無いと思う
Celeron以下の貧弱CPU+メモリ4GBとか、Win7以前の時代のPCとかだと実感する
2021/12/20(月) 17:38:14.28ID:sqtDC6Ul
先月までcore i3 4150メモリ8GBでVisualStudio2019使っていましたよ。主にwpfですが普通に動いてましたよ。
一緒にAndroidStudioも使っていましたがこっちもそれなりに動いたけど、エミュレータが少し重かった感じ。
さらにHyper-Vでもう一個windows使うときつい感じだったかなぁ。
2021/12/20(月) 18:02:09.10ID:/MJiWoqb
2017はPCリモートデバッグやRaspberryPI UWPリモートデバッグでちょっと遅く感じるな。
2019はOK。
2015はトンデモ。
509デフォルトの名無しさん
垢版 |
2021/12/20(月) 18:34:57.62ID:lt0tgbj5
フォントがぼけてたのって10年以上前の話だよな・・・
今はWindowsフォームなんかより綺麗だわ
2021/12/20(月) 19:30:14.72ID:3HJ7rP0Y
win7の頃のWindows PowerShell ISE って、滲んでボケボケだったよなw
2021/12/20(月) 19:43:10.70ID:OwtAvB5A
レンダリングの問題もあるのかもしれんが、Windowsマシンはハードの色んな組み合わせがあるからただ低DPIディスプレイ使ってる人が多いだけとか??
Macみたく高DPIディスプレイがデフォルトじゃないとか?
512デフォルトの名無しさん
垢版 |
2021/12/20(月) 19:49:29.43ID:ceMzU2Ib
マックもアイホンもアンドロイドも高詳細ディスプレーが当たり前になって、ギザギザしてるのはウィンドウズだけになった。
2021/12/20(月) 19:59:54.61ID:3HJ7rP0Y
Windowsではグラフィックドライバや液晶モニタもゲーミング需要ばかり気にしてるからな。
4K8K や HiDPI よりも FHD@144fps 低遅延とか、大人やビジネスユーザを馬鹿にしてる。
もうね、ゲーム専用エディションでも別途作って分けてほしい。
514デフォルトの名無しさん
垢版 |
2021/12/20(月) 20:01:48.01ID:ceMzU2Ib
企業が導入することも関係あるかも。
2021/12/20(月) 20:05:38.69ID:N6PiLWFt
モニタ2台でスケーリングサイズが異なる場合、片方がボケるのは諦めるしかない?
2021/12/20(月) 20:09:28.16ID:grqOAdxX
画面に10cmまで近づいて使うための高詳細ディスプレイなんかWindowsにはいらん。
ド近眼で目が悪い奴ほど4k8k、高リフレッシュレートに拘るよな。
517デフォルトの名無しさん
垢版 |
2021/12/20(月) 20:16:41.77ID:ceMzU2Ib
近眼じゃなくて老眼。
2021/12/20(月) 20:17:25.89ID:2JRCEtb9
>>515
Per-Monitor V2
2021/12/20(月) 22:59:19.00ID:QkysZdpN
>>516
4K8KをDPIスケーリング100%で使うもんだと思い込んでない?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況