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

■ このスレッドは過去ログ倉庫に格納されています
2021/06/20(日) 17:04:18.66ID:7UVkl7BZ
Windows Presentation Frameworkについて語るスレ。

前スレ
WPF(.NET4.x, .NET Core) GUIプログラミング Part25
https://mevius.5ch.net/test/read.cgi/tech/1612522463

関連スレ
Windows 10 UWPアプリ開発 Part 2
http://mevius.2ch.net/test/read.cgi/tech/1499658092/

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
2021/06/25(金) 10:46:21.59ID:6KbKcl9Y
>>119
Windows11で切るんじゃなかったっけ?
2021/06/25(金) 10:54:16.88ID:ifkxfXVo
32bitどころか俺のPCが11で切り捨てられそうなんだけど
2021/06/25(金) 10:59:16.69ID:A4FvZdNB
定期的に湧くよな、マカー並の低能馬鹿、切り捨て厨。
2021/06/25(金) 11:07:47.58ID:ifkxfXVo
>>122
なにこいつキモいんだけどw
2021/06/25(金) 11:08:04.57ID:eijvgSCB
>>120
切られたね
MSもApple並のド低脳になってしまった…
まあ32bit切り捨てよりTPM2.0未満切り捨ての方が影響でかいけど
2021/06/25(金) 11:12:48.81ID:MeOG8FMO
>>117
というかUWPは終了が確定している。
UI部分はWinUIに分離され、こっちが更新されていく。
残りカスのUWPはフェードアウト。
2021/06/25(金) 12:02:45.75ID:FVtxn09p
万が一Amazonアプリストアで軌道に乗っちゃったら、
そっちとの親和性開発の流れになるから、またリセットされるな
2021/06/25(金) 12:07:54.36ID:A4FvZdNB
言語でもハードでもOSでもどれも互換重視で圧倒的シェア獲得してきたのに、
後から乗っかってきた頭の悪い新参者はすぐ切り捨てしろと言うから困る。
そういう歴史を知らない馬鹿がMSの経営陣に多くなったということ。MSも落ちぶれたものだ。ゲイツはやはり偉大だったのだ。
2021/06/25(金) 12:25:33.63ID:e/bo9MqG
32bit CPU(32bit OS)サポート外とした、ってことでしょ。
今32bit OS使う理由って25年近く前の16bitプログラムの何か使ってるか、
15年ほどデバイス更新せず古いまま使ってるか。
いいかげん更新しろよって感じでしょ。

64bit OS内での32bitの実行ファイルはもちろんwin11でも動作するわけで、互換性としては十分だろ。
2021/06/25(金) 12:47:49.60ID:A4FvZdNB
ほんと切り捨てろ連呼してる奴は馬鹿ばかりだ。
130デフォルトの名無しさん
垢版 |
2021/06/25(金) 13:56:45.31ID:NV5/Ahkd
64bitと言ってもAMDが作ったx86互換の64bitもどきだからな
インテルのIA64が勝っていたらx86アプリは今頃残っていなかっただろう
2021/06/25(金) 14:13:52.60ID:/3glHUNQ
wpfくっそむずすぎ
こんなんやっとれんわ
132デフォルトの名無しさん
垢版 |
2021/06/25(金) 14:25:50.32ID:Wd+wOk9Z
馬鹿には無理
2021/06/25(金) 14:34:50.27ID:/3glHUNQ
バカだから無理だわ
datagridとかのドキュメントも長ったらしいし、
reactivecollectionやらobservablecollectionやらがやたら長ったらしくて冗長だし、
画面に複数のデータをリアクティブにするだけで長ったらしいコードが溢れるし、
他の言語のwebなら数十行のコードもxamlまで含めて何百行となるし、
実行したらしたで重いし、保守なんてさせられんわ

linqくらいだわいいの
仕事ならしゃあないだろうけど
134デフォルトの名無しさん
垢版 |
2021/06/25(金) 15:37:06.01ID:PQH5rdUP
XAMLは使わなければWPF最強
135デフォルトの名無しさん
垢版 |
2021/06/25(金) 16:22:42.63ID:BnS8egAD
>>133
「クラス名が長いから嫌だ」って…
まさかメモ帳で書いてるんじゃなかろうな
2021/06/25(金) 17:19:49.38ID:djQjn/cE
失敗プロジェクトの連続
MSには馬鹿しかいないのか
2021/06/25(金) 17:36:50.94ID:ifkxfXVo
本気で馬鹿しかいないと思うよ
ブラウザさえまともに作れずに結局Chrome互換
検索エンジンもゴミ
WPFとUWP分離したりくっつけたり
dependency propertyなんかみてもひどいしな
褒めるところが全く無いのがすごい
2021/06/25(金) 18:15:45.87ID:wfTcV3LX
VSCodeとか新生Edgeとか他所のフレームワーク使う時のMSは伸び伸びしとりますなあ
2021/06/25(金) 19:07:24.25ID:zVVssHd/
>>137
ブラウザはGoogleの露骨な妨害があったから泣く泣く断念した経緯がある。
2021/06/25(金) 20:01:38.14ID:buVq68wJ
どこも同じゃないの?
仕事で作らされてもろくなもん出来ないよ。
2021/06/25(金) 21:12:58.06ID:/vwepKGE
WPFを使うとプロジェクト全体の作業効率がアップするのか甚だ疑問だな。本当に良いものならもっと普及してる筈なのだが
142デフォルトの名無しさん
垢版 |
2021/06/25(金) 21:36:11.44ID:BnS8egAD
ここ最近WPFが善か悪かの議論しかしてないよな
何か他に話題は無いん?

…まぁ、無いかw
2021/06/25(金) 21:38:17.66ID:zVVssHd/
>>144
https://qiita.com/tags/wpf
https://qiita.com/tags/winforms
2021/06/25(金) 21:38:53.51ID:zVVssHd/
>>141
>>143
2021/06/25(金) 21:41:33.62ID:zVVssHd/
WPF : 記事数1,123, フォロワー625
WinForms : 記事数78, フォロワー6

これが現実
146デフォルトの名無しさん
垢版 |
2021/06/25(金) 21:42:58.30ID:595fcDMG
>>117
MSは社内ですら方針統一できてないのがなあ
CairoやLonghornがコケた頃から何も変わってない
2021/06/25(金) 22:13:07.08ID:i6/+pAU6
なぜそのタグで検索して比較したw
2021/06/26(土) 03:46:23.80ID:XXzuMEQx
>>145
Windows Forms で検索すると、1513
WinForms:258
Forms:4412
WPF : 1903
2021/06/26(土) 03:50:38.30ID:XXzuMEQx
Xamarinで検索: 1726
タグのXamarin:968記事、906フォロアー。

如何にQiitaの読者層が信用ならないかが垣間見えるような。
2021/06/26(土) 03:56:28.35ID:XXzuMEQx
Qiitaではなく、Quoraだと、
C++: Follow 1M
C#: Follow 382K
Java: Follow 1.3M
つまり、人気は、
Java > C++ >> C#
2021/06/26(土) 04:39:37.06ID:XXzuMEQx
Google Trendsだと、WPF,MFC,Flutter,Qtが互角くらいで、WinFormsとUWPは低迷。
2021/06/26(土) 04:46:05.20ID:XXzuMEQx
Flutterは上昇中。MFC,WPFは徐々に下がってきている。
Xamarinは横ばいで低迷。
QtやFlutterはマルチプラットフォームなのに対し、MFCは古くからありWindows
専用な割には未だにかなり強い。
2021/06/26(土) 06:35:43.77ID:ZRPAi/RT
>>150
人気言語なら
Rust > TypeScript > Python > Kotlin > Go > Julia > Dart > C# >
Swift > JavaScript > SQL > Bash/Shell/PowerShell > HTML/CSS > Scala > Haskell > R > Java > C++

習得したい言語なら
Python > JavaScript > Go > TypeScript > Rust > Kotlin > Java > C++ > SQL > C# >
Swift > HTML/CSS > Dart > R > Ruby > C > Scala

糞な言語なら
VBA > Objective-C > Perl > Assembly > C > PHP > Ruby > C++ > Java > R > Haskell > Scala >
HTML/CSS > Bash/Shell/PowerShell > SQL > JavaScript > Swift > C# > Dart


by SO 2020調べ
2021/06/26(土) 06:53:11.90ID:ZRPAi/RT
GitHubリポジトリ数

Flutter(21,854) > WPF(5,679) > Xamarin(3,434) > WinForms(3,373) > UWP(1,630) > MFC(355)
2021/06/26(土) 11:27:25.79ID:TqdTR7t2
Flutterの人気がスゴいってのは分かった
2021/06/26(土) 11:54:16.49ID:XXzuMEQx
githubは特殊性が有ると思う。
vue.jsは、185k star、29.4k fork で、スポンサー(ほぼ知らない企業ばかり)も大量に
付いているが、実際の使用例はとても少ないと聞いてるし。
逆に、qtなんかは、1.4k star, 680 fork だけど、ウェブではないところで
結構使われていることが分かってる。
2021/06/26(土) 12:09:15.30ID:XXzuMEQx
>>145
Qiitaは、Webにちゃんとまとまって書いてないことを、自分で調べた人が
書く場所。だから、Webに情報が少ない事が書かれる傾向がある。
いくつかの調査で、WinFormsはWPFより使われていることが分かってる。
2021/06/26(土) 12:16:53.81ID:XXzuMEQx
2020/07/26 の時点で、マウスイベントで頻繁に更新される多くのDatagridviewsを使った
ビジネスアプリは、古いPCだと、WinFormsはマウスの反応が即時だがWPFはマウス
をクリックしてからUIが反応するまで数秒掛かると書いてある。

https://stackoverflow.com/questions/19642320/is-there-a-performance-difference-between-wpf-and-winforms

Great piece of advice here. I attempted a wpf business app with a number of
Datagridviews that were frequently updated by mouse events, and on older
production pcs, the app would take as long as a second between mouse click,
and ui response. Winforms version response time is practically immediate.
– c jk Jul 26 '20 at 23:49
2021/06/26(土) 12:21:32.22ID:w6j9gBE1
WPFのDatagridがゴミなのはもう常識だろ
2021/06/26(土) 13:01:58.02ID:+M0IgX5j
フレームワークにフレームワークが必要ってのは言語やプラットフォーム関係なく根っこが腐ってるからそうなるんだと思う
2021/06/26(土) 13:16:45.55ID:gzd4bl1h
(;´д`)
2021/06/26(土) 14:45:30.68ID:E0lcRfGC
グリッドコントロール使うアプリケーションの大半はゴミだけどな。
一覧画面と編集画面の2画面構成の方がほとんどのケースは使いやすい。
使いにくいしバグの元なんだからセル内で編集させるなよ。
2021/06/26(土) 15:24:13.20ID:TqdTR7t2
Readonlyで使うけどな
164デフォルトの名無しさん
垢版 |
2021/06/26(土) 15:26:27.93ID:hHYOAEGk
>>116
変人現るw
2021/06/26(土) 16:58:10.29ID:E0lcRfGC
ListView使えよ
2021/06/26(土) 17:03:12.16ID:KFUgiKj4
>>162
伝票入力なんかは表イメージのまま入力できる方が喜ばれるんだよ
WPFでやるならグレープシティのやつとか使った方がいいけど
2021/06/26(土) 17:10:24.36ID:E0lcRfGC
罫線付けたListViewでよくね?
ListBoxでもいいが。
2021/06/26(土) 17:12:42.88ID:zteDreFe
>>142
昔は普及はまだかの話しかなかったが、
今はもう普及は絶望的なのに評価しても仕方ないよな
2021/06/26(土) 17:33:33.64ID:SFjxv/Ip
データグリッド使わなくて済むようにカスタムリストアイテム作れるようにしたのがWPFとXAMLでしょ
(´・ω・`)おしゃれするんやで
2021/06/26(土) 18:35:14.18ID:Gmvay1qu
って言うかDataGridViewで事足りる
2021/06/26(土) 18:50:13.30ID:8sPnjTqa
その普及普及って話がピンとこないんだな。うちの周りじゃ普通にみんなWPFなんだが。
2021/06/26(土) 19:10:48.38ID:zteDreFe
Win11の前にビッグウェーブきたか!!
2021/06/26(土) 20:11:30.33ID:pEKyLLkA
UWPのDataGridは高速って話だが、WinUI3も期待できるんじゃね?
2021/06/27(日) 06:35:24.56ID:WZv5A4P4
>>164
テスト用のアプリならStackPanelかWrapPanelに必要なコントロールをドラッグ&ドロップしていく大雑把なマウス操作だけで画面完成。
超簡単でそれでいて最低限のレイアウト変更に対応できてる。

“一度WPFを知ってしまうとWinFormsに戻りたくなくなる”ってよく言われるのは
それだけWPFの方が画面作りが楽ちんだから。
2021/06/27(日) 09:27:21.88ID:TSKhpmUU
コードからWPF並みのレイアウトを構築できるだけのWinformsをくれ
2021/06/27(日) 09:36:27.68ID:aF9t9MTl
QTでも使ってください
2021/06/27(日) 09:53:59.32ID:TSKhpmUU
イヤじゃイヤじゃC++なんて使いとうない

まあC#のGUIフレームワークがうんこなのとネイティブとの相互運用がめんどくなって
毎度C++に戻っていくの繰り返しなんだけどね
要因がどっちかひとつならまだ我慢もできるんだが…
2021/06/27(日) 10:48:35.35ID:WZv5A4P4
WinFormsにXAMLを採用すればいいだけ
2021/06/27(日) 11:12:50.09ID:NJoLUHcc
ポトペタ出来るほうが楽じゃ
2021/06/27(日) 11:51:59.67ID:WIKfglo6
よし、Delphiを導入しよう
Qtよりはマシだろ?
2021/06/27(日) 12:02:07.47ID:f3id7Upp
DelphiのVCLをコピったのがwinformなんだが。
2021/06/27(日) 12:04:17.06ID:NX2lsBQd
>>179
じゃあWPFだな
2021/06/27(日) 13:39:52.48ID:jQhpCryR
>>181
コピーじゃなく本家が移った
2021/06/27(日) 14:28:53.00ID:me9wSnu9
181はBorlandの回し者か?
2021/06/27(日) 15:20:54.70ID:f3id7Upp
誤解を与えたようなので説明しよう。

世界的に実績のあるPGが開発→Winform→大人気
どこの馬の骨か分からんPGが開発→WPF→不人気

こういうことです。
2021/06/27(日) 15:22:04.21ID:8VL1opuX
昔のホームページビルダーとかExcelみたいに作れればええやろ
2021/06/27(日) 17:06:36.35ID:toTJDPNF
>>185
そういえばDelphiはGUI部分が大人気で、その開発チームがMSに移って作った
のがWinFormsだったのか。
どうりでWPFより設計が美しく感じるはずだ。
後発でも駄目なものはダメなんだよ、ここの信者が何を言っても。
2021/06/27(日) 17:28:14.85ID:bJFlr767
>>187
MFCよりもVCLのほうが断然使いやすかったもんな
2021/06/27(日) 17:35:16.09ID:WZv5A4P4
C#の言語仕様部分に主にかかわってる。
それは設計に関わっていないWinFormsの酷さを見れば分かるだろ?
WinFormsは生産性が低いし品質も低くなりがちなのは事実。信者が何を言っても。
2021/06/27(日) 17:42:49.35ID:HfXxTqRR
@ahejlsbergには終わりかかってるような環境よりTypeScriptに注力してもらった方が世の中のためになる
2021/06/27(日) 22:04:13.11ID:6ow+jL0/
reunionの名前が変わってる
Windows App SDKだってさ

検索殺しだわ
192デフォルトの名無しさん
垢版 |
2021/06/28(月) 00:59:55.07ID:mF8S9I5g
それはMSの得意技なので…w
193デフォルトの名無しさん
垢版 |
2021/06/28(月) 01:12:00.97ID:nwjsCynN
Webを見ても、UI設計はマークアップ言語でやるっていうのが正解
それはソフトウェア開発においても同じだった
WinFormsは完全に不正解
2021/06/28(月) 01:34:40.12ID:mF8S9I5g
WinFormの肩を持つ気はさらさら無いけど、あの時代はそれがスタンダードだったでしょ
JavaのSwingだってそっちに行ってたし
Delphiを神のごとくあがめる人がいるけど、そういう先見の明はなかったよね
2021/06/28(月) 02:48:41.32ID:JBMsD7o3
マークアップ言語なら同じってのはウンコとショートケーキを同列に扱うがごときだよ
もちろんXAMLがウンコでね
2021/06/28(月) 06:21:29.97ID:zyIZLp3R
他のマークアップ言語と比べてXAMLが優れてるなんて誰も言ってないんじゃないか?
WinFormsがウンコすぎてXAMLの方が数倍マシってだけで。
2021/06/28(月) 07:18:41.45ID:czRIvr8g
そもそも何が悲しくてマークアップ言語でUIを記述せなあかんのか
それに加えてあのクソバインディングの仕様

思想に拘泥しすぎて使いづらいことになっとる
C#の言語仕様の方向性とはまったく真逆
2021/06/28(月) 08:00:53.90ID:cZa6zFVz
>>195
まあ、他のショートケーキ環境と比較してみればXAMLがいかにウンコかよくわかるかもね。それって例えばどれ?
2021/06/28(月) 08:19:26.68ID:ajvVSSfT
冗長くんの言葉のチョイスが小学生だなw
2021/06/28(月) 08:33:12.98ID:czRIvr8g
データ記述言語としてのXMLもほとんどの用途はJSONに置き換わっとるし
Webだって生HTMLの記述を避けていかに楽するかにみんな試行錯誤しとる結果がフレームワークの乱立なわけで
もうマークアップがダメなのよ、XAMLというアイデアが生まれた瞬間からダメ
201デフォルトの名無しさん
垢版 |
2021/06/28(月) 08:48:33.34ID:nwjsCynN
Formsの臭いものに蓋をしたような裏のコードを見て
コレジャナイって気付かないもんかねえ
2021/06/28(月) 08:52:45.03ID:+h03On/r
>>160
2021/06/28(月) 08:55:18.72ID:yki3tuNE
うだうだ言ってもWPFが普及しなかったという事は事実
2021/06/28(月) 10:23:14.06ID:+h03On/r
普及するかどうかと優れたアーキテクチャかどうかは
全く別の話なのも事実
205デフォルトの名無しさん
垢版 |
2021/06/28(月) 10:28:27.83ID:2Oa7bDPq
ユーザー目線では遅い重い
開発者目線では面倒くさい難しい
MS目線ではやめたい捨てたい
206デフォルトの名無しさん
垢版 |
2021/06/28(月) 11:23:45.55ID:7XtL7Dy7
>>175
wxWidgets
2021/06/28(月) 11:38:04.11ID:yLrQOr5w
古代UNIX時代のマークアップ技術をなぜ未だに引っ張り出さなあかんねん。
2021/06/28(月) 11:46:36.50ID:kyJYPXM1
ウダウダと文句を垂れ流しておられる皆様方の理想のUI記述言語はどのようなものでございましょうか?
209デフォルトの名無しさん
垢版 |
2021/06/28(月) 11:57:00.05ID:bIZ7S0Sd
>>200
jsonでUI記述するC#Framewoek作れ
210デフォルトの名無しさん
垢版 |
2021/06/28(月) 12:00:01.72ID:bIZ7S0Sd
誤解されそうなので補足しとくが
漏れはjsonもxmlもxamlもうんこだと思ってる
2021/06/28(月) 12:09:14.53ID:MUa2ipuR
それはちょっと語弊があるだろ
どんなに優れたマークアップ言語の上にでも汚物のようなスキーマは構築できるってのが正しい
クソDSLを設計して喜んでていいのってそれこそ小学生までだよねーww
2021/06/28(月) 12:38:19.33ID:zyIZLp3R
>>205
ユーザー目線:
WinForms:遅い・重い・応答なし・見づらい・使いづらい
WPF:速い・使いやすい
開発者目線:
WinForms:低機能・手の施しようがない・バグ地獄
WPF:必要なものが一通り揃っていて現代の開発に耐えられる

WPF程度を難しいなんて言っているレベルは転職をお勧めする。
2021/06/28(月) 12:40:21.87ID:TdjQ7qGS
趣味でやってる人だろ
さすがにプロでそんな馬鹿はいないと信じたい
2021/06/28(月) 13:02:13.72ID:yLrQOr5w
>>212
技術者としてそういう捏造するようになったり終わり。人間のクズ。
2021/06/28(月) 13:12:45.57ID:yki3tuNE
>>204
優れていなかったから普及しなかったのでは?単純に
2021/06/28(月) 13:16:23.14ID:DPgYMhor
だよね
必死にWPFを持ち上げるよりもどこがダメなのか議論するほうが建設的
WPFマンセー厨の人達は黙っておいたほうがいい
2021/06/28(月) 13:20:14.01ID:x0F/IlHt
×優れている
○ある面では優れている

糖質だって探せばいいところの一つくらいはある
2021/06/28(月) 13:39:01.27ID:gSJxewSh
>>216
MVVMでやろうとした時の教育コストがネックかな。
俺一人でやるなら問題ないけど、プロジェクトの都度人集めてやるような会社だときつい。
2021/06/28(月) 13:59:28.09ID:BZRfVYEc
winFormsって重いの?
まあSQLseverの大量のデータを扱う場合はそうかもしれないけど
2021/06/28(月) 14:43:55.35ID:ajvVSSfT
C++=Delphi > VB6 >>> WinForms >>Java Swing
速度だけならVB6の方が早かったからな
■ このスレッドは過去ログ倉庫に格納されています