WPF(.NET4.x, .NET Core) GUIプログラミング Part24

■ このスレッドは過去ログ倉庫に格納されています
2019/12/09(月) 12:36:14.49ID:9LsUsH++p
Windows Presentation Frameworkについて語るスレ。

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

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

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2021/01/14(木) 16:05:09.78ID:2xvAdK/I0
Prismって使われてる?
2021/01/14(木) 16:08:08.41ID:gYDerupm0
うん
2021/01/14(木) 16:43:53.34ID:us8Mk+7V0
むしろPrism以外が死んでる
2021/01/14(木) 17:11:58.74ID:2xvAdK/I0
そうなんだサンキュー
2021/01/14(木) 18:16:36.60ID:4B/6jC4e0
デザインをデザイナと分担できるというけど、経験上ビジネスロジックと比べたらデザインの工数なんて半分以下だから分担の恩恵が薄いんだよな
2021/01/18(月) 01:26:43.69ID:Kpsjp2aqM
scrollviewerがmanipulation系のイベントがハンドラ内でe.Handled=trueによってイベントのバブルアップを止められているらしい(URL貼れないけどどっかの個人ブログ参照)から
カスタムコントロールでe.Handle=trueしないものを作りたいんだけどうまくいかない
2021/01/20(水) 16:16:26.10ID:Wx/Iy2mC0
なんでtreeviewのbeforeexpand無くなってるの?
MSってよく意味の分からないことするよね
2021/01/21(木) 16:03:37.57ID:qWgafXth0
すれち
2021/01/26(火) 08:34:09.85ID:361yZFbpd
長年WindowsFormsやってきて、ようやくWPFに移行しようとしているワイのモチベーションがあがるお言葉をお願いします
2021/01/26(火) 08:36:03.63ID:ud7WAy7Ca
Xamlに慣れとくのは無駄にはならんだろ
2021/01/26(火) 08:41:47.50ID:Vy6n/RPYM
>>798
何かを始めるのに遅すぎると言う事は無い
2021/01/26(火) 09:43:49.72ID:qSdfocRRM
>>798
WPFは既にメンテナンスモードでWinFormsと同列
現在のシェアから考えてWinFormsより長く生き残ることはまずないから、もし自身のエンジニアとしての延命が目的なら今更やるのは全くお勧めできない
Webやれ
2021/01/26(火) 09:55:14.16ID:Vy6n/RPYM
デスクトップじゃWin32アプリが最後まで生き残りそう。
winformアプリも大量に有るのでゾンビの様に死滅しない。
2021/01/26(火) 11:17:20.66ID:SEH/ccP0r
>>798
web系技術でデスクトップアプリ作る
時代になってますよ。
2021/01/26(火) 11:40:37.20ID:ZjE6Xg+z0
モチベーションアップする言葉じゃないなw
2021/01/26(火) 11:59:33.60ID:j7spnDSJ0
mongodbのコンパスとか多分chromiumだろうけど美しいもんなー
2021/01/26(火) 12:16:42.96ID:NAba6hCjM
web系って流行り廃りが激しいので後のメンテが大変かも。
807デフォルトの名無しさん (ラクッペペ MM8f-rma+)
垢版 |
2021/01/26(火) 12:21:02.53ID:m9QEFa1vM
htaはいつまで使えるだろうか?
2021/01/26(火) 12:42:38.13ID:b2P28rbA0
3月に正式リリース。7月にフルスペックの予定のWinUI3がWPFの代替となる予定だが
特に大きな変化はないから安定すれば移行が進むんじゃねーかな?
809デフォルトの名無しさん (ブーイモ MMcb-M8KH)
垢版 |
2021/01/26(火) 12:59:30.20ID:sDueyM6cM
>>808
イマイチわかってないんだけどUWPと共通化できて嬉しい?
2021/01/26(火) 13:33:11.88ID:kStMQ1/o0
ChromeBookでも動くんか?
2021/01/26(火) 14:14:45.77ID:YUoLXY1Qd
結局Web系ってなにやればいいの?
ASP.NET MVCとか?
2021/01/26(火) 14:14:54.68ID:WHTpfe5BH
結局Web系ってなにやればいいの?
ASP.NET MVCとか?
2021/01/26(火) 14:34:10.17ID:fB+Ar5X+0
今時MVCで新規で作る必要ある?
2021/01/26(火) 14:40:20.88ID:NAba6hCjM
>>812
ASP.NET Core MVC
2021/01/26(火) 15:00:30.94ID:3RPKEuA50
Web APIならね。UIが必要ならそこはRazor Pagesにしときな。
2021/01/26(火) 20:34:15.63ID:xVPuSdRM0
>>802
Win32レベルでいいならC++/CLI以外みんな生き残るだろ。
2021/01/26(火) 20:38:42.61ID:xVPuSdRM0
>>803
「作れる」のレベルはだんだん上がってきているけどデスクトップフレームワークの域にはまだ遠いよなぁ。
BlazorでWPF動かせるようになったらいいんだが。
2021/01/26(火) 21:13:38.65ID:SEH/ccP0r
>>817
Blazorはjs書けない層の
救済ライブラリーですよ。
2021/01/26(火) 21:19:33.80ID:xVPuSdRM0
>>818
Cはアセンブラ書けない層の救済言語、みたいな?
2021/01/26(火) 21:24:27.11ID:SEH/ccP0r
>>819
ちょっと違うかな。
js<-->c#のラッパーライブラリーになります。
なので遅くて機能も少ないです。
2021/01/26(火) 21:33:10.40ID:xVPuSdRM0
そういう話じゃなくてね、>>818はC#よりJSの方がハードルが高いと言いたいのかってこと。
822デフォルトの名無しさん (ワッチョイ 5f6a-xA1r)
垢版 |
2021/01/26(火) 21:39:57.47ID:9pIisiq/0
>>820
さすがにデタラメすぎワロタ
2021/01/26(火) 21:41:41.11ID:SEH/ccP0r
>>821
それは人によりますね。

>>819
アセンブラ書ける層にもc学ぶメリットがありますが、
(cはアセンブラ書けない人の救済目的でない。)
jsでwebアプリ開発者出来る層が、
Blazor学ぶメリットは無いって事です。
2021/01/26(火) 21:55:22.08ID:xVPuSdRM0
>jsでwebアプリ開発者出来る層が、
>Blazor学ぶメリットは無いって事です。

つまりWebアプリの方がハードルが高いって言ってるんだろ?
2021/01/26(火) 22:41:31.51ID:hQ6WFpsM0
いやBlazorが糞って言ってるんだろ
2021/01/26(火) 22:51:00.14ID:SEH/ccP0r
webアプリメインでやってりゃ
デスクトップアプリ開発なんて未知の領域だし
逆もまた然りでしょ。

つってるうちに、
web開発者がそのスキルの延長で
デスクトップアプリ作り始めてるって時代に
なっちゃってますけどね。

因みにスマホアプリも業務系は
かなりの部分的がwebView使った
webアプリですわ。
2021/01/26(火) 23:55:27.32ID:wUk9YuWu0
結局デスクトップアプリやりたかったら何勉強したらいいんだよー
2021/01/27(水) 00:03:20.45ID:XeV35zEs0
GDI
2021/01/27(水) 06:04:27.12ID:pUY+TGNk0
>>827
UWP
2021/01/27(水) 07:57:56.27ID:HOXaQKzC0
UWPはいいね
この前ストアアプリ配信したんだけど結構ダウンロード数伸びてる大したことないアプリなのに
まだマイクロソフトストアが未成熟だからね
すでに飽和してるApp StoreやGoogle Play Storeじゃこうはいかない

マイクロソフトストア狙い目よ
2021/01/27(水) 08:05:32.37ID:Q5PELBL+0
Web(React)もデスクトップ(WPF)もやってるが、だからといって今のReactで
デスクトップアプリ作る気にはなれんな。

>web開発者がそのスキルの延長で
>デスクトップアプリ作り始めてるって時代に

自分が持ってるスキルで他分野に入り込みやすくなったから
喜んで使っているんだろうが、これから新しくデスクトップアプリを
始めようって人に勧めるのはちょっと違うかな。
2021/01/27(水) 08:28:30.65ID:XM7FIDHcM
趣味の開発なら良いが業務用アプリでUWPを使おうとは思わんな
2021/01/27(水) 09:09:15.94ID:HOXaQKzC0
でもさ趣味と業務で技術を使い分けるのも非効率じゃない?
2021/01/27(水) 09:16:51.18ID:6qpNXEFE0
趣味はある程度妥協できるけど、業務はそれができない
2021/01/27(水) 09:18:43.10ID:XM7FIDHcM
>>833
業務用には枯れたものを使いたいねえ
最先端も追っかけなきゃ技術者としては終わるけど
2021/01/27(水) 09:31:24.47ID:PQslRsA90
いまさらUWPはやめとけ
2021/01/27(水) 09:34:14.87ID:Q5PELBL+0
マイクロソフト環境にどっぷり漬かっている会社ならビジネス向けストアを使う手もあるだろうが
IT部門が全社に配布する手間を減らせる以外のメリットが思いつかんな。
まさか常にサイドローディングしてもらうわけにもいかんだろうし。
2021/01/27(水) 09:45:27.80ID:XM7FIDHcM
新規だとWPFですかねえ
winformよりはUWPへの乗換ハードルは低いし
webじゃ無理なアプリもあるし
2021/01/27(水) 09:47:08.33ID:lP1lXV780
デスクトップ ExcelVBA
Web スプレッドシートGAS
2021/01/27(水) 11:58:47.28ID:s+2IuEm00
今から投資するなら
.NET MAUI
かな。xaml + mvvm が糞すぎた。
2021/01/27(水) 12:01:39.36ID:2Yp9CVeL0
全く詳しくないんだけどWINUIは糞なところは改善されるの?
2021/01/27(水) 12:34:09.96ID:XeV35zEs0
良く判らんが、ザマリン下位のskia
をGDIでラップ出来るようになったの?
843デフォルトの名無しさん (ラクッペペ MM8f-rma+)
垢版 |
2021/01/27(水) 13:27:12.09ID:+quYuruPM
UIがどうなろうとIPropertyChangedは全部書かないといけませんか?
2021/01/27(水) 13:34:31.78ID:nqDSrDWAM
>>843
必要でしょう
ReactivePropertyとかBindableBaseを使えばコーティング量が減る
2021/01/27(水) 13:36:55.01ID:4ZLvOcYXM
>>843
MVUなら必要ないよ
846デフォルトの名無しさん (ラクッペペ MM8f-rma+)
垢版 |
2021/01/27(水) 13:52:55.21ID:+quYuruPM
うーん
プロパティにref使えないけど
SetPropertyどうやって使ってんの?
2021/01/27(水) 13:53:49.65ID:nqDSrDWAM
.NET MAUIか
2021/01/27(水) 13:54:43.18ID:nqDSrDWAM
>>846
え?
2021/01/27(水) 14:09:18.65ID:s+2IuEm00
xaml登場時からやってる
ベテランの自分でさえ
xaml流mvvmは
コード量が激増して面倒臭すぎる。

ReactのJSXみたいに
xaml中にコードが直接かけるように出来んものか?
2021/01/27(水) 19:59:46.88ID:1NyuRNVoM
<x:Code>で囲めばゴリゴリC#書けるよ
面倒だから素直にコードビハインドに書いた方が早いけど
どうせg.csにコピーされるだけだし
まあ何につけmvvmが失敗の原因だったよね
2021/01/27(水) 21:48:06.42ID:Q5PELBL+0
失敗というか、WPFに挫折した人の原因ではあるのかもしれない。
2021/01/27(水) 22:50:02.01ID:I3USHUPf0
VisualStateManagerはBlend前提の設計かもしれんが、ちょっと解りにくいわな
2021/01/27(水) 22:51:44.29ID:VJox6Jtr0
MVVMってテストしやすいのはいいけど、設計難易度上がるし面倒なところあるから初めて関わる人や新人いるチームだと大変すぎてな。一人や少数精鋭チームでやれればいいけど。
2021/01/27(水) 23:11:30.32ID:lP1lXV780
ビューとモデルの完全分離を目指した結果
肥大化するコードと失われる可読性って本末転倒じゃん
2021/01/28(木) 07:46:28.72ID:W1L2iiMj0
>>849
xamlてコード分離が目的なのに中にコード書いたら意味無いような気がするが
2021/01/28(木) 10:15:55.24ID:jO4DLeJx0
>>855
コードを分離する
メリットとデメリットは?
2021/01/28(木) 10:19:43.92ID:pXmI1nylM
>>856
メリット、ユニットテストがやりやすい
デメリット、めんどくせー
2021/01/28(木) 10:26:33.10ID:jO4DLeJx0
>>857
ユニットテストは
やりやすいレベルにはならんよ。
2021/01/28(木) 10:27:16.51ID:p4i84vEc0
なるよ
2021/01/28(木) 10:28:56.03ID:jO4DLeJx0
ならん!
2021/01/28(木) 10:40:26.08ID:FPs7AaOb0
>>858
UIベッタリだと出来ないだろう
862デフォルトの名無しさん (ワッチョイ 275f-rvE3)
垢版 |
2021/01/28(木) 10:59:29.17ID:dNWrUHbO0
>>854
Railsですね判ります
2021/01/28(木) 11:27:11.16ID:tUs9KAdY0
コード増えるのは辛いよな
なんとかならんのかこれ
864デフォルトの名無しさん (アウアウウー Sa4b-/dh6)
垢版 |
2021/01/28(木) 12:09:59.78ID:AZvjaiaSa
model view を結合するのはいいけど、、


model もうひとつつくって、プログラムされたタイミングで
同期させたい

isDirtyな
double bufferともいう
2021/01/28(木) 12:22:12.52ID:s7DYC79h0
INotifyPropertyChanged実装しないModelクラスを、ViewModelでラップするのがしんどい。
866デフォルトの名無しさん (アウアウウー Sa4b-/dh6)
垢版 |
2021/01/28(木) 12:25:43.67ID:AZvjaiaSa
mv結合100%だから不自由なんで、

設計でいうmodelとは別に
実装用のmodel作るべき

設計modelは切り離して
change by user
change by initialize
change by signal
も判別しなきゃだな
2021/01/28(木) 12:47:51.29ID:jO4DLeJx0
>>863
mvvmを捨てる事から初めてみましょう!
868デフォルトの名無しさん (ワッチョイ 7fb5-MWrm)
垢版 |
2021/01/28(木) 20:10:35.14ID:v7b31HK80
>>854
俺の言いたいことをすべてお前が大便してくれた
2021/01/28(木) 20:52:41.82ID:A1rlojlb0
>>861
FormsアプリをUIAutomation使って自動テストする地獄を味わったことのない人には
有難みがわからないのだろうな
2021/01/28(木) 21:24:14.10ID:eBfsAdOM0
そもそも>>858はユニットテストがなにか知らんような気がする
マニュアルに従ってテキトーにポチポチクリックして落ちなきゃテスト終わりーとか言ってそうw
2021/01/28(木) 23:14:26.37ID:jO4DLeJx0
>>870
今時ICサーバー必須と言われてますわ。
2021/01/29(金) 05:32:11.60ID:smfBIAno0
ICサーバーってなんだ?
まさかと思うけどCIサーバーのことじゃないよな?w
2021/01/29(金) 12:45:43.37ID:geJ3sMpq0
874デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/01/29(金) 19:43:57.28ID:7PT6zv600
>>870
俺は>>858じゃないけど、
マジ、おせーて
assertとか使う奴?
それともGUI上で出来るようなのがあんの?
2021/01/30(土) 10:03:36.71ID:mgrsH3mq0
>>855
ビジネスロジックコードの分離が目的なのだから、デザインコードは一緒になっている方が良いかも
2021/01/30(土) 12:20:17.91ID:g5e1Zwf90
Javaでオブジェクト指向が流行った時期の間違いみたいに
大規模開発専用のクソ仕様を銀の弾丸として全部に使おうとして失敗してる感じに思える
2021/01/30(土) 13:07:37.17ID:RzqUn7xl0
アニメをデフォルトで使う分にはxamlってそれほど複雑でもないんだけどね
formsと同じことやるなら
878デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/30(土) 14:21:59.06ID:7JTFVOFL0
UI作る人と分業できるって言うけどどんだけ凝った画面にすんだろ。
結局はコード書く人が画面まわりもやってね?
最近違うの?
2021/01/30(土) 15:34:49.92ID:B8WCMkPK0
専業のUIデザイナー雇ってるとこなんて余程の大手だけだろうな
2021/01/30(土) 15:56:17.98ID:pMmYD7u10
xaml書く専業デザイナーって聞いたことないけどいるの?
881デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/30(土) 17:17:04.26ID:7JTFVOFL0
UIとコード別けられるのが最大のメリットという位だしな。
居ないとおかしいがな。
2021/01/30(土) 17:34:35.97ID:8FYOnD7D0
誰が言った言葉かは知らんが、少なくともUIデザインを別担当者にできるのが
最大のメリットだということじゃないと思うぞ。
883デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/30(土) 18:58:30.27ID:7JTFVOFL0
何がメリットなのかWPF素人にはサッパリだよ。
2021/01/30(土) 19:40:15.77ID:8FYOnD7D0
俺個人としてはxamlでレイアウトしやすいところとmvvmでテストしやすいところかな。
2021/01/30(土) 19:46:33.44ID:WbnyfnwJ0
デザイナーがHTML/CSSで作ってプログラマーが同じ見た目になるようにXAML書く
2021/01/30(土) 19:52:36.52ID:KxRn6hKfM
デザインとプログラミングの分業においては遥かに先を行っているはずのWebでは、
最近は逆にJavaScriptにインラインでHTMLを書いているのでした
887デフォルトの名無しさん (ワッチョイ b501-M8vF)
垢版 |
2021/01/30(土) 20:01:29.27ID:7JTFVOFL0
>>885
初めからデザイナにXAMLで書いてもらったら?
2021/01/30(土) 21:55:15.69ID:WbnyfnwJ0
>>887
XAML書いてくれるデザイナーなんているの?
2021/01/31(日) 00:20:30.44ID:c/zdJjVH0
作業としてUIとコードを分けられることがメリットじゃなくて
そこが疎結合になるからいいんでないの
890デフォルトの名無しさん (ワッチョイ 66b5-ERTH)
垢版 |
2021/01/31(日) 01:07:23.46ID:SnnX9R4F0
疎結合になること自体はメリットではない
疎結合になることで何がメリットになるか書かないと

結局、分担作業やデバッグが楽という話に落ち着くと思うが
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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