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

■ このスレッドは過去ログ倉庫に格納されています
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/
2023/03/07(火) 09:02:57.32ID:oCilbHp7
WPFはWindows 11テーマ待ちかな?

デスクトップアプリ作るとなると、ウィンドウ位置合わせぐらいはやるだろうが
https://pub.dev/packages/window_manager
ちゃんとメンテナンスされてるっぽいし
2023/03/07(火) 19:26:50.19ID:awlf9dGM
さすがに公式はもう対応はしないでしょ
C#界の著名人???たちがなんちゃってアクリルとか作ってたけどそこから進展はないし使われてる感もない

以前アクリル使うとパフォーマンスが落ちて消費電力が上がりますってMSが注意してたんだけど一体なんなのか
何がしたいのか?
2023/03/07(火) 20:54:38.37ID:oCilbHp7
>>114
>>77で今さらWindows 11テーマ対応を投票してやるかもしれないからびっくりなのよ
WinUI 3がグダグダになってるから今さらやろうとしてるんじゃねぇかな
2023/03/07(火) 21:14:57.23ID:jgeYqRwK
マウイの方で聞くべきか迷うんだけどマウイじゃなくてわざわざWinUI3選ぶメリットって何?
バグだらけなの抜きにしても理由思い浮かばん
2023/03/07(火) 21:53:56.24ID:oCilbHp7
MAUI使った事ないけど
MAUIは基本クロスプラットフォームでコントロールはネイティブのラッパーだから、標準で用意されてるUIが各OSの最大公約数的なものになるからUI自由度低いと思う(自分で頑張らない限り)

WinUIとMAUIの標準のコントロール数比較
2023/03/08(水) 18:32:14.17ID:mcdKv02z
>>116
多分誤解があるんだろうけど

Mauiはクロスプラットフォームの仕組みでxamarinの後継
WinUI3は単なるwindowsのUIライブラリで比べるのは変だよ

xamarinとWPFを比べてxamarinじゃなくてWPFを選ぶメリットって何と言うのと同じレベル

windowsでしかUI必要としないならxamarinやMauiを選ぶメリットは多分ない
2023/03/08(水) 18:42:09.48ID:mcdKv02z
Mauiに興味を持つ人間は確実に何かを勘違いしてる
どのレベルでも確実に勘違いがある
使ってみて気が付くまで勘違いしたまま
2023/03/08(水) 19:39:39.70ID:wXZtzhRA
テキストボックス、コンボボックス、チェックボックス、ラジオボタンにグリッドが使えればそれだけでいいんだけどそれでもMAUIってダメなん?
2023/03/08(水) 20:15:21.62ID:mcdKv02z
さっきも書いたけどwindowsでしか使わないのにMAUIを選ぶ理由は基本的にない

個人個人が好きに使えばいいよ
2023/03/08(水) 21:26:16.11ID:xUp/Im5G
>>118
んな当たり前のことが聞きたいんじゃなくてね
最初からMAUIにしとけばどんなアホでもプラットフォーム固有処理と共通処理を分けて設計することになるから少なくとも移植性と将来性の面で有利じゃん
勝手にWindows限定で話されても困るんだけど
>>121
現状xamlの機能はMAUIの方が進んでる訳だがメリット無いとか本気で言ってんならお前の知識の浅さが知れるわ…w
具体的にWinUI3にだけ出来ることとか性能面での優位性とかを書けよ
2023/03/08(水) 21:33:03.96ID:0/PwQdwj
中途半端な将来性やな
2023/03/08(水) 21:41:01.82ID:UYleOs8I
マウイ君は相変わらずアホだな
一つ教えてやると今度はその付け焼き刃の知識でマウント取ろうと暴れたからめんどいわ
2023/03/08(水) 21:51:03.42ID:0kF8prTi
マウイ君は心折れたっぽいね
知識多少はあったからもうちょとできるのかと思ったが5chBrowserの進捗見てたけどあんなにコード書けないのにびっくりしたわ
2023/03/08(水) 22:38:55.94ID:StEoNHA3
>>112
xamlじゃない時点で論外
画面1個だけの使い捨てアプリでもwinFormなんて使う気にもならん
2023/03/08(水) 23:49:30.35ID:mcdKv02z
>>122
まあ君がmauiとWinUIが比較対象じゃないと言うことを知らなかったと言うことだけ理解した
2023/03/08(水) 23:51:38.20ID:mcdKv02z
>>122
一番目の主張と二番目の主張が矛盾してる

1番目は汎用性を持たせろ!
2番目は進んでるほうを使え!

君は何が言いたいんだ
ただ単に馬鹿をさらして終わるのか?
2023/03/08(水) 23:57:16.67ID:mcdKv02z
>>122
プラットフォーム固有処理と共通処理を分けて設計したくないからだろう
わざわざそんなことをしたくない
過去にPLC(ポータブル クラス ライブラリ)とか使って地獄を見てたから汎用性なんてなくていいと思うわ

単一のGUIフレームワークを選択して書いて終わりじゃないか
なんで必要もないのに苦行をするんだか
2023/03/09(木) 00:06:47.70ID:a5N7vCda
使い捨てアプリ最強はExcelだろ
2023/03/09(木) 00:24:27.52ID:5mRrsMYs
>>129
顔真っ赤で草
重箱の隅つつくのに必死で質問にはまともに答えられません…とw
お前がクロスプラットフォーム設計も議論もろくに出来ない初心者なのはわかったからもういいよ
マウント取りたいなら>>117 みたいに推測でもいいから有用なレスを書こうな
2023/03/09(木) 01:11:09.89ID:vhjcvbSa
>>131
こいつMauiがWinUI3に乗っかってるのも知らなそうだな…

バグだらけのWinUI3使うよりMaui使えっていうけどwindowsではWinUI3の上に載ってるんだから矛盾してる
2023/03/09(木) 01:39:11.93ID:H1QN25OQ
>>132
知ってるわんなこと
WinUI3で出来ることがMAUIでも出来るんだったらわざわざWinUI3単体で開発するメリット無くねってことを言ってんの
いつまで論点ずらしてんだよ
2023/03/09(木) 04:49:42.57ID:NtaOoLzk
>>133
MAUIだと他のプラットフォームとの兼ね合いからWinUiで使えるコントロールはデフォルトで用意されてないから、当然Windows限定ならWinUIで作ったほうが楽
カスタムコントロール作ればまあできるけど結構めんどくさいよ
2023/03/09(木) 04:51:21.62ID:NtaOoLzk
あとMAUIもバグだらけだからWinUIのバグに加えてMAUIのバグにも悩まされるってのもあるねw
2023/03/09(木) 06:08:29.89ID:WycPltfT
XAML自体が欠陥品だからどうしようもない
2023/03/09(木) 13:14:29.62ID:SOUYY3o2
xamlが中途半端でクソなのは全面同意
MAUI開発のネックは標準コントロールの少なさぐらいかね
DataGridとかデフォで機能もりもりなコントロールすぐ使いたくて尚且つWindows限定でいいならWinUI3かWPFって感じか
2023/03/09(木) 19:50:52.95ID:34y09rP4
https://forest.watch.impress.co.jp/docs/news/1484449.html
WinUI 3ベースバグ過ぎて無理でしたごめんなさいしてもいいんだぞ?
2023/03/09(木) 19:54:42.60ID:34y09rP4
https://learn.microsoft.com/en-us/windows/apps/windows-app-sdk/preview-channel#version-13-preview-1-130-preview1
preview 1
こいつら積みあがってるバグをフィックスする気ねぇの?
140デフォルトの名無しさん
垢版 |
2023/03/09(木) 21:15:38.70ID:wIQvQwlN
>>126
ちょっと慣れると楽だよな〜。
始めは敷居高いな。
2023/03/10(金) 00:17:30.09ID:bsHWuvF6
winformsは楽
だらだらとテキストログを吐くアプリで使える

使い捨ては大体これ
2023/03/10(金) 00:18:40.41ID:bsHWuvF6
>>138-139
WinUI3の弱点を書けば書くほどその上に載ってるMAUIの首が閉まってるのに気が付かないんかなあ?
2023/03/10(金) 07:12:26.72ID:OYnQuODg
WNUIいつ完成するの?
2023/03/10(金) 18:40:11.77ID:IJdfDo/R
Winformsは解像度違うとこで
デザイナー開くと面倒くさい
2023/03/10(金) 20:55:59.42ID:4nQZ5Veg
生産性も低いしな
146デフォルトの名無しさん
垢版 |
2023/03/11(土) 01:33:46.36ID:hGgfyS5a
>>143
もう完成してる
147デフォルトの名無しさん
垢版 |
2023/03/11(土) 01:36:39.66ID:hGgfyS5a
Silk.NETっていうOpenGLライブラリでWinUIとかで使えるようにControlとして描画したいのにそういった資料が全然なくてムカつく
公式ドキュメントも全くできてないからそういうコントロールがすでに用意されてるのかもわからん
OpenTKにはそういうのあるようだがせっかくだからSilk.NETで作りたい
https://dotnet.github.io/Silk.NET/
148デフォルトの名無しさん
垢版 |
2023/03/11(土) 01:39:14.02ID:hGgfyS5a
>>125
パーサー簡単に作れる人?
2023/03/11(土) 09:16:50.69ID:vi8/lqqR
>>147
お客様は神様です見たいな人間にプログラムは向かないよ
150デフォルトの名無しさん
垢版 |
2023/03/11(土) 13:18:52.20ID:V6KAuR8t
>>130
Excelは呪いを残すことがあるから、VBAを書き始めたら気を付けないと
151デフォルトの名無しさん
垢版 |
2023/03/11(土) 13:35:47.88ID:hGgfyS5a
>>149
たしかにそうか…
2023/03/11(土) 14:01:43.58ID:a+eqbn9d
まーたマウイ君か4ね
2023/03/16(木) 18:35:45.74ID:CRIg56ML
Delphi+WinUI3ってのが開発中だったようだ
https://blogs.embarcadero.com/ja/delphi-winui-3-demo-ja/
1年前から音沙汰なしのようで終了したかもしれないが
154デフォルトの名無しさん
垢版 |
2023/03/20(月) 21:15:56.81ID:uNO1Q/Lg
task.run() で非同期で動かしているんだが、VSでF5押して起動した場合は
UIも固まらずうまく動くけど、EXEたたいて実行するとUIが固まる。
なにこれ。
2023/03/21(火) 09:47:35.47ID:glo3Mskg
awaitしろ
2023/03/21(火) 12:38:13.37ID:meamVat5
https://www.kekyo.net/2016/12/06/6186
157デフォルトの名無しさん
垢版 |
2023/03/21(火) 17:32:45.31ID:YHDXYuuI
await 付けてたような。
await あるなし は環境で動作違うのか?
2023/03/21(火) 17:40:44.14ID:r8PDkwUg
ログ出力周りでのタイミングの変化とか
159デフォルトの名無しさん
垢版 |
2023/03/21(火) 18:17:55.80ID:YHDXYuuI
VS上で動作変でEXE版は正常ならまだわかるんだが。
2023/03/21(火) 18:47:21.33ID:r8PDkwUg
VS上ならコンソール出力排他でタイミングが整理されるとかね
2023/03/21(火) 19:25:53.19ID:bmg/fMak
exe叩いてVSでアタッチしても再現するか?
VSでデバッグせずに起動でも再現するか?
exe作成時とVSで起動時でビルドの設定を変えてないか?
162デフォルトの名無しさん
垢版 |
2023/03/21(火) 21:26:35.93ID:YHDXYuuI
>exe叩いてVSでアタッチしても再現するか?
これやったことないな。

>VSでデバッグせずに起動でも再現するか?
知らんけどリリース でメークしてる。

>exe作成時とVSで起動時でビルドの設定を変えてないか?
同じ。F5でEXE作ってエクスプローラからEXEをWクリックで起動。

やってることはCSV読み出し。
今度ソースアップするわ。
2023/03/21(火) 21:44:54.71ID:w9OlRdDI
多分Taskとawaitの挙動を理解してないだけだから
メソッドの作成ミス

awaitは実質returnなんだ
そこに至ると一旦上位層にもどる

await await await とasyncメソッドが連鎖的にGUIレベルまでreturnで落ちるように書かかないとビジーになる
途中で止めてはいけない
多分ボタンクリックイベントから実行してるんだろ
そこのbuttun_clickもasync書け
2023/03/21(火) 21:48:57.08ID:Z30EdOsO
Taskの仕様をよく理解してなくてデッドロックさせるのは初心者あるある
2023/03/21(火) 21:49:09.50ID:w9OlRdDI
普通の重い処理はbutton_click内で重い処理してそこから出てこないからGUIがビジーになる
GUIに処理をもどしてないからGUIは何もできない

async awaitはそこでreturnしてるのと変わらないので一番最後まで返してやれば
GUIは処理ができるのでビジーにならない
2023/03/22(水) 00:29:55.65ID:K+imgFQk
結局WPFとWinUI3はどちらが将来性あんの?
167デフォルトの名無しさん
垢版 |
2023/03/22(水) 06:06:04.57ID://ZBVQ4n
>>163
だからVSでF5押して起動かけた場合と作られたEXEを実行したときに
違いが起きるという事だけど。
VS上では正しく動く。
168デフォルトの名無しさん
垢版 |
2023/03/22(水) 06:31:08.51ID://ZBVQ4n
>>156
ここ前見たな。
マルチスレッドの勉強はいろいろとサンブル
動かして挙動を確認するのが一番だな。
パターンが多いよな。
169デフォルトの名無しさん
垢版 |
2023/03/22(水) 09:42:09.18ID:Nclm91Ij
test
2023/03/22(水) 17:42:45.34ID:xzHaZjM+
>>167
コード見てないからなんとも言えないけど初心者感丸出しだなあと言う感想しかない
> VS上では正しく動く。
これを見ると特にそう感じる
ある程度コードを書いてるとこんな表現まずしないから

ここからは一般論として

大体コードは書いた通りに動くと言うけどそうじゃないこともある
debugとrelaseでは動作が違う
relaseビルドで最適化で必要な部分が消されておかしくなったりフレームワークのバグが顕在化することもあるけど実際は1%もない
debugビルドは補助輪が付いた状態で間違ってても動いたりする

基本的にrelaseビルドの動作が正解でそれが書いたコードの本来の正しい動き
debugで誰かの言う "正しく動く" と言うの自分の想定した動作をしているだけで正しく動くのとは違う
今回のはどうか知らんけど大体は自分のコードのバグが原因
2023/03/22(水) 18:00:56.64ID:lb80FTnL
マウイ高校なんか相手にすんなよ
2023/03/22(水) 18:11:15.32ID:xzHaZjM+
Maui君なのか
相手して損した

debugはdisposeしたはずのリソースにアクセス出来たりヒープ物故割れてるのに何事もなく使えたりする
2023/03/22(水) 22:23:36.35ID:+GzFm+gl
>>166
WinUIは今のところ様子見(開発要員少なそうだから半年に1回ぐらい状況チェックで十分)。
バグとかパフォーマンスとかファイルサイズとか酷すぎてとてもじゃないけど使いたいと思わない。
UWPも出始めの頃ちょっと触ってみてその後使う機会なかったけど深入りしなくてよかった。時間を無駄に捨てないで済んだ。
2023/03/22(水) 23:07:16.35ID:xzHaZjM+
正直なところどちらも将来性はないとおもうわ

WinUI3はwinUI4が出たころに考えればいいよ
WPFは17年近く経ちやっとMVVMの本命が出てきたから枯れたベースに接ぎ木して使う分にはいい
2023/03/22(水) 23:22:26.34ID:KifTk0Kr
UWPは品質はよかったよ
何度かバグふみぬいたけど、短期間にあれだけのものを仕上げたのは素晴らしい
Windowsスマホとか全力だったからなMicrosoft
それに対してWinUIのやる気のなさは
2023/03/22(水) 23:27:22.18ID:KifTk0Kr
まぁ、深入りもなに幸いWPFにしろUWPにしろMAUIにしろどれか一つできればxamlに方言はあるにせよ知識無駄にならないのが救い
2023/03/22(水) 23:29:47.44ID:KifTk0Kr
Windowsスマホが勝利してたら今頃まわりみんなxaml触ってるという世界線が...
2023/03/23(木) 00:03:18.46ID:m8shBfmm
MSの中の人からすればWindowsAPIを使いこなせない連中はこれでも使ってろって感じなんだろ
2023/03/23(木) 00:09:20.96ID:wT0U3Vxa
「Windows API」とは一体...
2023/03/23(木) 00:11:21.71ID:WscWLyee
Win32API
2023/03/23(木) 02:24:30.32ID:btJuVQWt
Win64APIは一体いつになったら出るんですか?
2023/03/25(土) 20:11:21.17ID:ANMA4S4q
5chブラウザってスクレイピングで作るの?
暇になったら手を付けてみたい
2023/03/25(土) 22:18:41.24ID:FyyDShDG
>>173
流石に1年半も経っているからパフォーマンスは十分な速度が出るようになっているし
トリミングでサイズの問題も解決している
2023/03/25(土) 22:19:35.22ID:wgIKN+ci
5chは専用ブラウザは許可が必要なんじゃなかったか?
個人で常識の範囲内の負荷で使うなら文句言われないだろうけど
2023/03/25(土) 22:53:09.45ID:b5Zftm/K
WinUI 3は未だにオープンソース化されてないからWPFと違ってコミュニティがプルリクエストもできないし、サービスパックと称したアップデートは2,3のやべえバグだけ潰しておしまいだし、それ以外のアップデートでもちょこっとバグ潰しておしまいだし
バグ報告しても1ヶ月は全く反応がないのがザラだし

まじでオワコン
2023/03/26(日) 01:27:06.90ID:fUM+abqb
>>184
つまり、配布はできない
2023/03/26(日) 16:11:32.11ID:I2d6Lgjx
デスクトップアプリ、どのフレームワークで作る?
最低要件(最低限これくらいは満たしてね)チェックシート2023
============================================================================

チェック用アプリ仕様:
 アプリ上の"はろー"ボタンをマウスでクリックしたらメッセージボックスで"わーるど"を表示する

(1)配布要件1:動作させるのに必要なファイル一式を任意の場所に配置して動作する
(2)配布要件2:管理者権限不要で配置できる
(3)配布要件3:動作させるのに必要なファイル数が10以内 ※1

(4)起動要件1:エントリファイルをダブルクリックして起動可
(5)起動要件2:エントリファイルをPowerShellから起動可
(6)起動要件3:管理者権限不要で起動可
(7)起動要件4:ネットワーク切断状態(スタンドアロン)で動作する

(8)メモリ要件:
 A:起動時の消費メモリが20MiB以内
 B:起動時の消費メモリが40MiB以内

(9)ストレージ要件:
 A:動作させるのに必要なファイルサイズ合計が200KiB以内 ※1
 B:動作させるのに必要なファイルサイズ合計が1MiB以内 ※1

※1. OSにプリインストールされているランタイムは除く

============================================================================
(1)~(7)はYesの場合+10, Noの場合は-100
(8)~(9)はAの場合+10, Bの場合+5, その他は-100

合計点80以上が合格ライン(当然点数は高ければ高いほど優秀)
188182
垢版 |
2023/03/26(日) 16:44:43.94ID:eOh+bm3F
なるほど。proxy2chというのを使わせてもらえば、datを取得できるということですね
後はガワだけ作ればいいと。

構想練ってみます
2023/03/26(日) 17:13:21.09ID:VwD9LVJs
https://egg.5ch.net/test/read.cgi/software/1676632269/
MAUI君のスレ引き継げ
2023/03/26(日) 18:01:39.24ID:eOh+bm3F
そうだね、分からないことあったら先人が残したスレを活用させてもうおうかとw

とりあえずガワはWPFでWindows10以降専用。スマフォアプリとか考えない
過去ログ保存等はSQLite3
C#にef coreという王道で始めてみようかと

来月GW当たりから着手できたらいいな
2023/03/26(日) 20:37:57.66ID:fUM+abqb
>>187

> デスクトップアプリ、どのフレームワークで作る?
> 最低要件(最低限これくらいは満たしてね)チェックシート2023

WinUI 3 (C++)

(1)OK
(2)OK
(3)2つ
(4)OK
(5)OK
(6)OK
(7)OK
(8)25MB
(9)260KB

合計点 80
2023/03/26(日) 20:54:14.68ID:3czjH2Ql
いい加減OSのスタイルくらい標準で対応しろ
2023/03/26(日) 22:31:54.25ID:xVxTUxS7
>>191
そのチェックシート、NGが1個でもあったら不合格なクソ仕様だが。
2023/03/26(日) 23:27:05.46ID:fUM+abqb
>>193
NGは無い、8と9が5点
2023/03/26(日) 23:34:44.73ID:xVxTUxS7
>>194
貴方の結果がその通りなのは承知しているのだが、
チェックシート自体がクソなのでやってもしょうがなさそうだと思った。
2023/03/26(日) 23:36:17.02ID:fUM+abqb
確かに、でも面白かったからいいや
2023/03/28(火) 20:33:05.23ID:+fEU/xnF
全部クリアして当たり前のゆるゆるなチェックシートだから
クソなのはNGになるフレームワークの方やで
2023/03/29(水) 08:02:38.55ID:3jbHE5sT
まあ2023でこれはな、とは思う
2023/03/29(水) 08:20:57.90ID:AKQaTzmd
WINUIやる気ないならさっさと諦めてほしい
2023/03/30(木) 09:59:27.99ID:1VN4x7wb
きびししいいいいいいいいいいいいいいいい!!!!!!!!!!!11
2023/04/01(土) 16:30:27.25ID:YYpVedex
https://www.youtube.com/watch?v=Nkjc9r0WDNo

wasm gc
2023/04/08(土) 00:18:10.44ID:6o1jJWCj
ChatGPTで
WindowsFormのアプリ(複雑怪奇)をWPFで書き直すってできるようにならんかな
2023/04/13(木) 20:49:10.00ID:0SqhBdqB
WPFで複雑なレイアウトや動作をさせようとするとWinForms以上にはまるからまずは簡素化することをおすすめする
2023/04/13(木) 21:20:01.34ID:YZ8/Xbx0
マジでそろそろwinui完成させろよ
どれもこれも中途半端な開発しやがって
winformsが一番マシって舐めてるのか
2023/04/13(木) 21:50:51.24ID:TA914v/t
ちょうど1.3リリースされてるじゃん
どのバグがフィックスされたのか一覧ないのか?
もちろん全くフィックスしてなくてちょっこ新機能しておしまいっていつも通りだろうが
2023/04/13(木) 21:53:27.54ID:TA914v/t
MAUIチームより何もしてないぞこの10人未満のWinUI Team
2023/04/13(木) 22:07:02.72ID:ygBYLsEy
見た目良くするだけならライブラリ入れれば事足りるし現状WPFからWinUI3に移行するメリットなんかあんの
機能的なアドを見出だせないんだが
208デフォルトの名無しさん
垢版 |
2023/04/13(木) 22:10:31.64ID:+RvjRnu8
ChatGPT最高だな。正規表現が苦手なんだけど、サクッとコード作ってくれて大いに助かるわ
2023/04/13(木) 22:24:15.57ID:ER+m3+fP
正規表現のデバッグ楽しいのに…
まあ時間の無駄ではあるがw
2023/04/13(木) 22:26:50.87ID:vo8owMeT
正規表現って自分で作ってるうちはまだいいんだけど人の作った奴読みたくないんだよな
2023/04/13(木) 22:41:57.43ID:TA914v/t
金になるTeamsアプリ改善とかChatGPTとの統合とかAzure とかそっちに忙しいからな

https://build.microsoft.com/en-US/home
Build 2023で
migration of File Explorer to WinUIセッション1つだけ?
2023/04/13(木) 22:45:18.65ID:TA914v/t
https://io.google/2023/intl/ja/

MicrosoftよりGoogle IO 2023に期待だな
2023/04/13(木) 22:53:36.16ID:+X7eFvsG
>>206
プライベートリポで作業してるらしい
全部オープンにしてくんないかな
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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