!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
WPF(Windows Presentation Foundation)について語るスレ。
前スレ
WPF(.NET, WinUI) GUIプログラミング Part32
https://mevius.5ch.net/test/read.cgi/tech/1694210576/
関連スレ
Windows 10 UWPアプリ開発Part 3
https://mevius.5ch.net/test/read.cgi/tech/1627556967/
コードを貼る場合は以下のサイトの利用をお勧め。
https://ideone.com/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
WPF(.NET, WinUI) GUIプログラミング Part33
1デフォルトの名無しさん (ワッチョイ 835a-A2Rd)
2024/08/20(火) 21:16:46.38ID:mRLJAUv40472デフォルトの名無しさん (ワッチョイ a927-x2X+)
2025/01/18(土) 23:40:58.23ID:mIpVhKqc0 one-way dataflowって要は
ビューはモデルの状態を反映するのが仕事
ビューはモデルに指示を出すのが仕事
状態の更新はモデルの仕事
というだけのことで、MVVMでもまともな作り方してたら基本的にそうなってるはずなんだけどな
ただ、2-way bindingしちゃうとモデルの状態を反映していたはずのVMのプロパティがビューの状態変化によって汚染されてしまう
それを考慮して適切に同期をとらなきゃいけないのは複雑だから2-way bindingはやめようということだね
しかしその辺は実装上のテクニカルな問題であって、本質的には前述の役割分担が適切に行えてさえいれば大きな違いはないのだが、
この残念な人は責務の分離が正しく理解できてなくてVMに状態更新のロジックを書いちゃってるんだろうね
ビューはモデルの状態を反映するのが仕事
ビューはモデルに指示を出すのが仕事
状態の更新はモデルの仕事
というだけのことで、MVVMでもまともな作り方してたら基本的にそうなってるはずなんだけどな
ただ、2-way bindingしちゃうとモデルの状態を反映していたはずのVMのプロパティがビューの状態変化によって汚染されてしまう
それを考慮して適切に同期をとらなきゃいけないのは複雑だから2-way bindingはやめようということだね
しかしその辺は実装上のテクニカルな問題であって、本質的には前述の役割分担が適切に行えてさえいれば大きな違いはないのだが、
この残念な人は責務の分離が正しく理解できてなくてVMに状態更新のロジックを書いちゃってるんだろうね
473デフォルトの名無しさん (ワッチョイ 41eb-aSuJ)
2025/01/18(土) 23:42:23.90ID:3aURuoFq0 両方触ったうえでReact糞WPF快適と言ってるんだがw
お前ら口だけのクズと違ってWPFで割と高度なアプリ作って1000スター持ってるからね
悔しかったらそれぐらいの実績上げてみろよ
わざわざ嫌いなもののスレにきてWPF下げてReact持ち上げる癖にReactでもWPFでも大したアプリ作ったことないんだろ
IT土方にも適用できず発狂しちゃったんだろうね
お前ら口だけのクズと違ってWPFで割と高度なアプリ作って1000スター持ってるからね
悔しかったらそれぐらいの実績上げてみろよ
わざわざ嫌いなもののスレにきてWPF下げてReact持ち上げる癖にReactでもWPFでも大したアプリ作ったことないんだろ
IT土方にも適用できず発狂しちゃったんだろうね
474デフォルトの名無しさん (ワッチョイ cfbb-ed4M)
2025/01/19(日) 00:43:59.86ID:3DQ5maho0 技術的な良し悪しとは違うけど、今からWPFを学ぼうとすると情報を探しづらい (古い情報が多い) のがつらい感じはする
人気再上昇みたいな未来は見えづらい
人気再上昇みたいな未来は見えづらい
475デフォルトの名無しさん (ワッチョイ ff79-EhoM)
2025/01/19(日) 01:30:05.22ID:IALgBqxE0 このスレ見てるとWPFを学ぶ気が失せる
特にCSS使えないってのはかなり致命的だった
MS奴隷しか使わないフレームワークなんだって事が判ったよありがとう
特にCSS使えないってのはかなり致命的だった
MS奴隷しか使わないフレームワークなんだって事が判ったよありがとう
476デフォルトの名無しさん (ワッチョイ 0301-PaJw)
2025/01/19(日) 02:14:27.03ID:9/Z57kyd0 何と戦ってるんだ?
477デフォルトの名無しさん (ワッチョイ 0301-XwLX)
2025/01/19(日) 02:31:06.30ID:hqL2fexm0 ReactというかFlutterでもSwiftUIでもなんでも良いんだけど、最近のFlux/コンポーネントベースのフレームワークはガチで使いまわせるが
WPFのユーザーコントロールは結局既存のコントロールの拡張を遠回しに実装するだけで
複数のアプリで使いまわせた試しがほとんどない
見た目を分離することと生産性の向上は全く関連性はない
WPFのユーザーコントロールは結局既存のコントロールの拡張を遠回しに実装するだけで
複数のアプリで使いまわせた試しがほとんどない
見た目を分離することと生産性の向上は全く関連性はない
478デフォルトの名無しさん (ワッチョイ 53eb-mNhZ)
2025/01/19(日) 08:30:40.98ID:4ysBiuwS0 >>477
じゃあCustom Control作るか、標準コントロールにtheme適用すれば?
そもそも見た目を分離するってのはユーザーコントロールの話じゃないからね
ViewとViewModelを分離することも言ってる
例えばある処理中に Spinner を実装する場合は、Reactだと Viewに状態を含むロジックをすべて書くことになっているから
非常にテストがしづらいしスパゲティになるんだけど
WPFだと プロパティとAsyncCommand を定義するだけでViewModel上でSpinnerが完結するから
完全に見た目とロジックが分離していることになる
よってViewModelだけテストすればよいし、Viewはただ表示するだけのシンプルなものになる
MVVMを叩いている馬鹿は、WinformsやらQtやらでそれなりのGUIを作ったこともなければReactやらでまともにテストを書いたことがないんだろう
じゃあCustom Control作るか、標準コントロールにtheme適用すれば?
そもそも見た目を分離するってのはユーザーコントロールの話じゃないからね
ViewとViewModelを分離することも言ってる
例えばある処理中に Spinner を実装する場合は、Reactだと Viewに状態を含むロジックをすべて書くことになっているから
非常にテストがしづらいしスパゲティになるんだけど
WPFだと プロパティとAsyncCommand を定義するだけでViewModel上でSpinnerが完結するから
完全に見た目とロジックが分離していることになる
よってViewModelだけテストすればよいし、Viewはただ表示するだけのシンプルなものになる
MVVMを叩いている馬鹿は、WinformsやらQtやらでそれなりのGUIを作ったこともなければReactやらでまともにテストを書いたことがないんだろう
479デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 08:44:45.64ID:4ysBiuwS0 複数アプリで使い回す?ってのをそもそもライブラリ提供者でもなくアプリ開発者が普通やるんかね。デスクトップアプリ開発は標準コントロール使うのが基本だと思うけど
俺はCustom Controlをわざわざ作りたいという状況になったことはほとんどない、ライブラリ開発者ではないから
同じアプリで1つのUserControlを複数使い回す方がよっぽどReactのコンポーネント指向に近いものだろうけど
DependencyPropertyとRoutedEvent使えば同様のことができるでしょう
DependencyPropertyの構文はひたすら冗長で確かにクソだけど慣れたら別にどうとでもなる
単にWPFに慣れてないだけに過ぎない、それでいちいち嫌いなもののスレに来てWeb技術を持ち上げるのはなぜ?
そのWeb技術を使って革新的なアプリでも作ってろよ、時間の無駄だから
俺はCustom Controlをわざわざ作りたいという状況になったことはほとんどない、ライブラリ開発者ではないから
同じアプリで1つのUserControlを複数使い回す方がよっぽどReactのコンポーネント指向に近いものだろうけど
DependencyPropertyとRoutedEvent使えば同様のことができるでしょう
DependencyPropertyの構文はひたすら冗長で確かにクソだけど慣れたら別にどうとでもなる
単にWPFに慣れてないだけに過ぎない、それでいちいち嫌いなもののスレに来てWeb技術を持ち上げるのはなぜ?
そのWeb技術を使って革新的なアプリでも作ってろよ、時間の無駄だから
480デフォルトの名無しさん (ワッチョイ 6f10-VyPR)
2025/01/19(日) 09:10:32.89ID:hrsA7ekD0 MahApps.MetroもWPF UIもあるので好きなだけ見た目変えたらいい
標準がいいと言われてもな、ToggleButton好きなやつおる?
標準がいいと言われてもな、ToggleButton好きなやつおる?
481デフォルトの名無しさん (ワッチョイ ff79-EhoM)
2025/01/19(日) 09:31:50.75ID:IALgBqxE0 トグルボタン(トグルスイッチ)と言えばね、効果がすぐ体感できる対象でしか使うべきではないとガイドラインにもあったと思うが
OSのWindowsの設定では不要と思える箇所にもスイッチが頻出して階層の深さとも相まって相当カオスなUIになってる
OSアップデードの度に項目の場所が変わるし動的に増えたりするギミックもあるし作ってる側は楽しいかもしれんが
使う側は一体何がどこにあって何が規定の設定だったのか把握するのは困難
これってどうにかなりませんか?MS奴隷の方々
OSのWindowsの設定では不要と思える箇所にもスイッチが頻出して階層の深さとも相まって相当カオスなUIになってる
OSアップデードの度に項目の場所が変わるし動的に増えたりするギミックもあるし作ってる側は楽しいかもしれんが
使う側は一体何がどこにあって何が規定の設定だったのか把握するのは困難
これってどうにかなりませんか?MS奴隷の方々
482デフォルトの名無しさん (ワッチョイ 0301-VyPR)
2025/01/19(日) 09:38:28.42ID:zqudOGtn0 https://youtu.be/fBtR_Jr7jIM
DGRAMなんかで受信してリアルタイムでグラフ表示などはwebじゃ厳しい。
DGRAMなんかで受信してリアルタイムでグラフ表示などはwebじゃ厳しい。
483デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 09:40:21.82ID:4ysBiuwS0484デフォルトの名無しさん (ワンミングク MM9f-my+7)
2025/01/19(日) 09:43:41.37ID:qr28wlEZM webスレに人がいないからな
ここに来るしかないのだ
ム板も限界集落だけども
ここに来るしかないのだ
ム板も限界集落だけども
485デフォルトの名無しさん (スプープ Sd1f-XwLX)
2025/01/19(日) 09:53:05.06ID:ienUY98Dd 正直現役世代の技術をこんなとこで話さないからね
昔話と、時代に取り残されたジジイをからかうだけの場所
昔話と、時代に取り残されたジジイをからかうだけの場所
486デフォルトの名無しさん (ワッチョイ 6301-RWhB)
2025/01/19(日) 09:55:16.62ID:Q2C+nQ4y0 node.jsのdgramモジュールを利用してElectronでデスクトップアプリとして作れるけど。
しかも当然MacでもLinuxでも動く。
しかも当然MacでもLinuxでも動く。
487デフォルトの名無しさん (ワッチョイ 6f10-VyPR)
2025/01/19(日) 10:45:51.06ID:hrsA7ekD0 別にMicrosoft.Extensions.AIの話をしてもいいんだけど、ここWPFスレだし?
ObservableCollection<ChatMessage>の使い方とかこじつけとこうか
ObservableCollection<ChatMessage>の使い方とかこじつけとこうか
488デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 10:51:43.11ID:4ysBiuwS0489デフォルトの名無しさん (ワッチョイ f36e-G44s)
2025/01/19(日) 11:26:31.80ID:6AOzoW9a0490デフォルトの名無しさん (ワッチョイ a310-fZ/N)
2025/01/19(日) 14:00:36.23ID:m6is0i100 reactなんて古式ゆかしいステートマシンがアーキテクチャのルーツだろ?
MVVM脳のままで使おうとすればそりゃぐちゃぐちゃになるわな
フレームワーク使うなら前提とするアーキテクチャには100%従うのがスタートラインだろ
そこから外れたことをやろうとするとたちまち破綻するのはどんな優れたものを使っても同じ
MVVM脳のままで使おうとすればそりゃぐちゃぐちゃになるわな
フレームワーク使うなら前提とするアーキテクチャには100%従うのがスタートラインだろ
そこから外れたことをやろうとするとたちまち破綻するのはどんな優れたものを使っても同じ
491デフォルトの名無しさん (ワッチョイ ff90-wC3V)
2025/01/19(日) 14:26:56.08ID:8zbcED4b0 他のスレに投下してスルーされたけど
ファイラースレより
Electron製TabSpaces
Tauri製spacedrive
触ってこいって
酷いもんよ
ファイラースレより
Electron製TabSpaces
Tauri製spacedrive
触ってこいって
酷いもんよ
492デフォルトの名無しさん (ワッチョイ 0301-XwLX)
2025/01/19(日) 15:22:20.74ID:hqL2fexm0 >>478, 479
tailwind cssやshadcn/uiみたいなのが流行ってるのは他人やAIが書いたコンポーネントをコピペしてそのまま動くからだよ
v0なんかの生成AIサービスもそれ前提の仕組みになってるしね
tailwind cssやshadcn/uiみたいなのが流行ってるのは他人やAIが書いたコンポーネントをコピペしてそのまま動くからだよ
v0なんかの生成AIサービスもそれ前提の仕組みになってるしね
493デフォルトの名無しさん (ワッチョイ 0301-XwLX)
2025/01/19(日) 15:25:02.25ID:hqL2fexm0 それくらいコンポーネントベースのフレームワークは再利用性高いって話
494デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 15:42:10.87ID:4ysBiuwS0 俺WPFで生成AI使いまくってけどかなりコピペで済んでるけどね
標準コントロールだけ使って見た目はライブラリに任せてるだけだし
お前のメリットで言うとWPFの方が上じゃないの?標準コントロールだけ使うだけで済むけどWebはそうは行かないでしょ
ロジックとUIの分離ができないから
標準コントロールだけ使って見た目はライブラリに任せてるだけだし
お前のメリットで言うとWPFの方が上じゃないの?標準コントロールだけ使うだけで済むけどWebはそうは行かないでしょ
ロジックとUIの分離ができないから
495デフォルトの名無しさん (ワッチョイ 630b-G44s)
2025/01/19(日) 16:10:35.09ID:vo12PcwL0 『ロジックとUIの分離ができないから』(・ω・#)?
496デフォルトの名無しさん (ベーイモ MMff-4FDL)
2025/01/19(日) 16:35:13.96ID:sBZWn6/UM たぶんVMとVの分離のことを言っているのだろうけど、それが再利用性にどう寄与すると思っているのかは謎だね
現実には再利用を前提にするならVMがセットになったコントロールなんてありえないんで、SpinnerのようなケースではWPFでもコントロール自体に局所的な状態をカプセル化してしまうのが普通だね
現実には再利用を前提にするならVMがセットになったコントロールなんてありえないんで、SpinnerのようなケースではWPFでもコントロール自体に局所的な状態をカプセル化してしまうのが普通だね
497デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/19(日) 17:00:49.29ID:9ZaKfB7aM WPFは参照元が増えるときっつい
ListViewでMVVM使ってると
listviewのVM
listviewitemのVM (ItemsSourceのItem)l
listviewitemのコンテキストメニューのVM
等が合ってそれらの条件に基づいたStyleとかも適用されてどこがどこだか判りにくい場合がある
ユーザーコントロールなんかにすると外に公開するプロパティも組み合わさってめんどくさくなる
ListViewでMVVM使ってると
listviewのVM
listviewitemのVM (ItemsSourceのItem)l
listviewitemのコンテキストメニューのVM
等が合ってそれらの条件に基づいたStyleとかも適用されてどこがどこだか判りにくい場合がある
ユーザーコントロールなんかにすると外に公開するプロパティも組み合わさってめんどくさくなる
498デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 18:29:14.30ID:4ysBiuwS0 >>496
再利用性よりもロジックを分離することで保守性とテスタビリティと高まると言ってる
さらに生成AIとの相性も良いと言っている
俺再利用性なんて言ったか?文盲乙
ReactはViewに全てのロジックをごった煮で詰め込むから少し規模が大きくなるとまともにメンテできなくなる
JSXで三項演算子やらを乱用し、React hooksとか言うゴミで状態管理もViewと密結合になってまともにメンテできない
Reactで単体テストやろうとすると実質ブラウザテストのようなものになってしまうから意味ないんだよね
再利用性よりもロジックを分離することで保守性とテスタビリティと高まると言ってる
さらに生成AIとの相性も良いと言っている
俺再利用性なんて言ったか?文盲乙
ReactはViewに全てのロジックをごった煮で詰め込むから少し規模が大きくなるとまともにメンテできなくなる
JSXで三項演算子やらを乱用し、React hooksとか言うゴミで状態管理もViewと密結合になってまともにメンテできない
Reactで単体テストやろうとすると実質ブラウザテストのようなものになってしまうから意味ないんだよね
499デフォルトの名無しさん (ワッチョイ 630b-G44s)
2025/01/19(日) 18:34:17.70ID:vo12PcwL0 『ReactはViewに全てのロジックをごった煮で詰め込むから』(・ω・#)?
500デフォルトの名無しさん (ワッチョイ 6f10-VyPR)
2025/01/19(日) 18:37:56.04ID:hrsA7ekD0 DataContextは親のを参照するからListViewItemのためにVMは要らない。
具体的には<Image Source="{Binding DataContext.UserIcon, RelativeSource={RelativeSource AncestorType=ListView}}" />という書き方をする。
詳しいことはgithub copilotがサンプルまで示して教えてくれるだろう。
具体的には<Image Source="{Binding DataContext.UserIcon, RelativeSource={RelativeSource AncestorType=ListView}}" />という書き方をする。
詳しいことはgithub copilotがサンプルまで示して教えてくれるだろう。
501デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/19(日) 18:48:26.94ID:9ZaKfB7aM よく読んでからレスしないとエアアドバイスになってるぞ
502デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/19(日) 18:59:40.08ID:9ZaKfB7aM よくある例としては懐かしのダウンローダーみたいなのがあって
ダウンロード一覧で右クリックから停止させたりタスク削除したりで各モデルなどの状態に応じてメニュー表示を切り替えたりとかするの非常に判りにくい
Ancestorで辿れないvisualツリーとかめんどくさい
ダウンロード一覧で右クリックから停止させたりタスク削除したりで各モデルなどの状態に応じてメニュー表示を切り替えたりとかするの非常に判りにくい
Ancestorで辿れないvisualツリーとかめんどくさい
503デフォルトの名無しさん (ベーイモ MMff-4FDL)
2025/01/19(日) 21:02:49.77ID:mTeOJF0EM ListViewItemViewModelが作られるのは単に可視化要件に応じた変換を入れたいだけのことが多いけど、
やりたいことに対して必要なコード量増加や可読性悪化のコストが大きすぎる嫌いがあるよね
一方Reactの場合は極めてstraightforwardだけど、まあ残念な人の言うとおりtestabilityの問題はあるね
直接モデルからJSXに出力しないでViewBag的なものを間に挟むようにすりゃいいだけの話だけどな
やりたいことに対して必要なコード量増加や可読性悪化のコストが大きすぎる嫌いがあるよね
一方Reactの場合は極めてstraightforwardだけど、まあ残念な人の言うとおりtestabilityの問題はあるね
直接モデルからJSXに出力しないでViewBag的なものを間に挟むようにすりゃいいだけの話だけどな
504デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/19(日) 21:26:11.98ID:9ZaKfB7aM ちなみに文盲とは文字自体読めない人のことなのでこの件は文盲とは違う
505デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/19(日) 22:35:23.82ID:4ysBiuwS0 >>497
d:DataContext設定すれば補完も出るしrelativesource使っても補完出るし別にわかりづらいと思ったことないけど
Reactの配列.mapsも別にわかりやすいと思えんけど
なんかVMとModelを混同してない?なんで全てViewModelなの?
d:DataContext設定すれば補完も出るしrelativesource使っても補完出るし別にわかりづらいと思ったことないけど
Reactの配列.mapsも別にわかりやすいと思えんけど
なんかVMとModelを混同してない?なんで全てViewModelなの?
506デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/20(月) 00:08:29.91ID:3NRwBGJyM 誰かが主張しているAIコピペで済まない例だからだよ
507デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/20(月) 07:29:13.05ID:aN5Z/OXB0 >>506
俺の作ってるアプリはお前みたいなゴミには作れない高度なアプリだけどそれはモデル側だからな
ゴミアプリで星1000とれるわけないでしょう
ViewModelとUIは表示するだけのシンプルなものだからAIに任せてるってだけ
俺の作ってるアプリはお前みたいなゴミには作れない高度なアプリだけどそれはモデル側だからな
ゴミアプリで星1000とれるわけないでしょう
ViewModelとUIは表示するだけのシンプルなものだからAIに任せてるってだけ
508デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/20(月) 12:16:15.76ID:3NRwBGJyM509デフォルトの名無しさん (アウアウエー Sadf-yOY8)
2025/01/22(水) 22:42:55.14ID:+cH9+gpYa wpfが生産性高いとか嘘だろ
高dpiとかあるから仕方なしに使ってるだけだわ
はるかに簡単なwinforms使いたい・・・
高dpiとかあるから仕方なしに使ってるだけだわ
はるかに簡単なwinforms使いたい・・・
510デフォルトの名無しさん (ワッチョイ 6358-pww+)
2025/01/22(水) 23:48:16.00ID:Q8cPNFyo0 イベントハンドラーベースでつかえば
WPFでも変わらんと思う。
WPFでも変わらんと思う。
511デフォルトの名無しさん (ワッチョイ 0301-PaJw)
2025/01/23(木) 00:38:41.47ID:qgBcNJJS0 今ってコントロールは同じものが揃ってるの?
WPFでdatagridviewあったっけ?
WPFでdatagridviewあったっけ?
512デフォルトの名無しさん (ワッチョイ f302-uhza)
2025/01/23(木) 07:42:31.46ID:OK/8qPGh0 WinFormsのHiDPI対応って、そろそろマシになったの?
513デフォルトの名無しさん (ベーイモ MMff-4FDL)
2025/01/23(木) 09:15:47.12ID:6Qnjvph+M 今時WinFormsやWPFが選択肢になるようなとこなら解像度下げりゃいいだけ
老眼にはその方が喜ばれる
老眼にはその方が喜ばれる
514デフォルトの名無しさん (ワッチョイ 0301-VyPR)
2025/01/23(木) 21:11:40.84ID:Hvrfdhq80 より高性能のDataGridというのがある。5-6倍速い。
ただし難易度高い。
ただし難易度高い。
515デフォルトの名無しさん (ワッチョイ 6f10-VyPR)
2025/01/23(木) 21:21:42.62ID:DZVX6PPk0 GridViewとListViewは初心者がドハマリして退散してゆく要因なのよね
これは常々思う。もしforeachで書けてExcelみたいに使えてたらWPFの未来は大きく変わってたのに
これは常々思う。もしforeachで書けてExcelみたいに使えてたらWPFの未来は大きく変わってたのに
516デフォルトの名無しさん (ワッチョイ 53eb-kzTA)
2025/01/24(金) 08:56:26.39ID:kzbPjj7p0 何がそんなに難しいのかわからん
ChatGBTに聞いたら大体教えてくれるでしょ
ChatGBTに聞いたら大体教えてくれるでしょ
517デフォルトの名無しさん (アウアウエー Sadf-yOY8)
2025/01/24(金) 09:19:24.15ID:cDEF0Ngta 聞かなきゃわかんないほど複雑だからだろ
直感的に書けるようなのだったらよかった
直感的に書けるようなのだったらよかった
518デフォルトの名無しさん (ベーイモ MMff-4FDL)
2025/01/24(金) 12:28:17.25ID:/oFMYy+rM WPFの思想的には本来はListView使えばいいんだけど、
ListViewってWeb的な要件定義やデザインが前提なのでWPFのユーザー層と致命的に相性悪いのよね
当初はWebアプリ置き換えも狙ってたから仕方ないのだけれど、結果的にWPFの普及を妨げた大きな原因の一つ
ListViewってWeb的な要件定義やデザインが前提なのでWPFのユーザー層と致命的に相性悪いのよね
当初はWebアプリ置き換えも狙ってたから仕方ないのだけれど、結果的にWPFの普及を妨げた大きな原因の一つ
519デフォルトの名無しさん (ラクッペペ MM7f-A2Ae)
2025/01/24(金) 12:41:17.38ID:8XH7oyJhM セルのなか右寄せしたいんだけど……
の回答を見て、なにこれ…(退散)
の回答を見て、なにこれ…(退散)
520デフォルトの名無しさん (オイコラミネオ MM27-RIo9)
2025/01/24(金) 18:50:38.66ID:3qxOozUPM CSSみたいな気軽さはないな
521デフォルトの名無しさん (ワッチョイ 0301-VyPR)
2025/01/25(土) 08:17:57.72ID:S/gVA+8a0 DataGridは何でもできるし、かなり早い。が、難しい上に資料も皆無。
上手く使えれば良いものだけどな。
上手く使えれば良いものだけどな。
522デフォルトの名無しさん (スッププ Sd1f-XwLX)
2025/01/25(土) 15:46:19.47ID:CjfcP04Kd そういえば数年前にMAUI触った時、DataGrid無いと知ってがっくり。今も無いよね?
仕方なくAvalonia使った
仕方なくAvalonia使った
523デフォルトの名無しさん (ワッチョイ 0efe-pXYx)
2025/01/27(月) 21:59:48.48ID:HIYsVDfj0 Flutterにもデータグリッドは無い (ただ格子状に要素を並べるだけのものはあるが)
業務系ドットネッターにとっては驚くべきことに、データグリッドはUXの要素としてそれほど一般的なものでも必要不可欠なものでもないのだ
業務系ドットネッターにとっては驚くべきことに、データグリッドはUXの要素としてそれほど一般的なものでも必要不可欠なものでもないのだ
524デフォルトの名無しさん (ワッチョイ 3f99-x1jm)
2025/02/02(日) 17:21:33.73ID:BDmjqOlS0 誰も話題にしてないけど、.NET9でFluentテーマ追加されてた
ライトモードとダークモードにも対応
ライトモードとダークモードにも対応
525デフォルトの名無しさん (ワッチョイ 0f02-RvSc)
2025/02/02(日) 22:13:47.42ID:al2v3C030 WPFだけでなく、WinFormsでも現代的なことはだいたい何でもできるようにする方針になったらしいな
ダークモード対応とか
ダークモード対応とか
526デフォルトの名無しさん (ワッチョイ 4f01-mvJZ)
2025/02/03(月) 00:52:57.61ID:EJ23/y0s0 もうwinformsでいいじゃん
527デフォルトの名無しさん (ワッチョイ cf30-eN1n)
2025/02/03(月) 10:10:49.13ID:lH5DhCHU0 WinFormsもジェネリック設計にしてくれ
528デフォルトの名無しさん (ワッチョイ 3f79-sZTl)
2025/02/03(月) 19:48:48.47ID:0sYu9f470 MicrosoftがWindows上で成功して後世に残せた事ってCOMぐらいだな
後はゴミの山だ
後はゴミの山だ
529デフォルトの名無しさん (ワッチョイ 7f17-VqRJ)
2025/02/04(火) 11:34:02.15ID:Ovs0moOJ0 右クリックだろう
Windowsがオリジナルという訳ではないが、重要なUX要素としてはWindows上で成功してMacが追従した極めて稀なケース
Windowsがオリジナルという訳ではないが、重要なUX要素としてはWindows上で成功してMacが追従した極めて稀なケース
530デフォルトの名無しさん (ワッチョイ ff6e-l01Y)
2025/02/04(火) 15:39:07.81ID:DgRhz7KF0 マウスはMacが先
そもそもOSもMacが先だしコンピュータ自体Macのほうが先に作られている
windowsは何もかもMacのマネ
そもそもOSもMacが先だしコンピュータ自体Macのほうが先に作られている
windowsは何もかもMacのマネ
531デフォルトの名無しさん (ワッチョイ 4fa9-b9cB)
2025/02/04(火) 15:53:52.45ID:OOmuEv1d0 マウスとアプリでPC操作…世界を変えた初代Mac 貫かれたジョブズの美学と革新性 #なぜ話題(Yahoo!ニュース オリジナル 特集)
#Yahooニュース https://news.yahoo.co.jp/articles/b05f947581a8167c57cd854157ea61f71127f902
#Yahooニュース https://news.yahoo.co.jp/articles/b05f947581a8167c57cd854157ea61f71127f902
533デフォルトの名無しさん (アウアウエー Sabf-ItQP)
2025/02/04(火) 16:42:54.54ID:z2frJFuha マウスは1ボタンマウスがアップル、2ボタンはmicrosoftってのが言われるけど
歴史的にはもっと古い
comは素晴らしいって言われてるけどごみごみごみマジでごみ
歴史的にはもっと古い
comは素晴らしいって言われてるけどごみごみごみマジでごみ
534デフォルトの名無しさん (ワッチョイ 4f02-nFJ6)
2025/02/04(火) 17:13:11.57ID:xersMY3f0 マウスの発明者はダグラス・エンゲルバートでAppleはそれをパクっただけでしょ
ゼロックスPARCのAltoからGUIをパクって作ったのがLisaやMacintoshだし、元祖はAppleじゃないね
Windowsもパクリ元はAltoでしょ
ゼロックスPARCのAltoからGUIをパクって作ったのがLisaやMacintoshだし、元祖はAppleじゃないね
Windowsもパクリ元はAltoでしょ
535デフォルトの名無しさん (ワッチョイ 4f5f-fp+p)
2025/02/04(火) 17:21:40.36ID:kaUW1BUV0536デフォルトの名無しさん (ワッチョイ 0f33-xR55)
2025/02/04(火) 18:06:43.73ID:slGugBvz0 ここで続ける話でも無いけど、Appleって有り物寄せ集めてきれいにパッケージングして製品作るのうまいけど、新規技術を生み出して…ってのは無いよね
537デフォルトの名無しさん (ワッチョイ 3fb9-qCXR)
2025/02/04(火) 18:14:33.03ID:basEM2MH0 comが素晴らしいは聞いたことないヨ
538デフォルトの名無しさん (オイコラミネオ MM53-cJwu)
2025/02/04(火) 18:18:33.21ID:B02g7/WsM Appleはジョブズが戻る前には面白いネタのような外見のマックをいっぱい作ってたぞ
その頃はパチモン臭かった
その頃はパチモン臭かった
539デフォルトの名無しさん (ワッチョイ cfca-UW6t)
2025/02/04(火) 18:39:49.81ID:nTARnMre0540デフォルトの名無しさん (ブーイモ MM5f-BfWZ)
2025/02/04(火) 19:41:26.05ID:mKvZagsLM 隙あらばスレちな昔話
インターネット老人会いい加減にして
インターネット老人会いい加減にして
541デフォルトの名無しさん (ワッチョイ 3f79-sZTl)
2025/02/04(火) 22:49:19.80ID:dM3n6IGK0 >>537
*nix界隈が嫉妬してて似たようなの作ろうとしたら案の定失敗してた
*nix界隈が嫉妬してて似たようなの作ろうとしたら案の定失敗してた
542デフォルトの名無しさん (ベーイモ MM8f-VqRJ)
2025/02/05(水) 14:27:50.87ID:WS8tKgVDM >>539
OLEはWindowsをゴミのように不安定にした黒歴史の立役者だろ
結局後世にも残ってないしな
COMはオブジェクト指向IPC技術としては高く評価されるべきだが、UIのコンポーネント化技術としては大失敗
OLEはWindowsをゴミのように不安定にした黒歴史の立役者だろ
結局後世にも残ってないしな
COMはオブジェクト指向IPC技術としては高く評価されるべきだが、UIのコンポーネント化技術としては大失敗
543デフォルトの名無しさん (アウアウエー Sabf-ItQP)
2025/02/05(水) 14:43:51.39ID:/OFo3DVda 消えたのはセキュリティ上の問題だよ
基本動作がDLLインジェクションでなりたってたから悪用を防ぎようがなかった
新しい技術はその辺が改善されてる
Windowsを不安定にさせる癖はWPFでも継承中
基本動作がDLLインジェクションでなりたってたから悪用を防ぎようがなかった
新しい技術はその辺が改善されてる
Windowsを不安定にさせる癖はWPFでも継承中
544デフォルトの名無しさん (ワッチョイ 7fbd-nCgS)
2025/02/05(水) 14:47:03.35ID:y68TMTct0 今でもやってるWord内にExcelの表を挿入するのってOLEでしょ
545デフォルトの名無しさん (ラクッペペ MM4f-nJIn)
2025/02/05(水) 16:39:24.50ID:d+ne1xZNM ActiveXでしょ
546デフォルトの名無しさん (ワッチョイ 3fd3-x1jm)
2025/02/05(水) 21:20:00.53ID:kvSTlPgX0547デフォルトの名無しさん (アウアウエー Sabf-ItQP)
2025/02/05(水) 21:51:59.17ID:/OFo3DVda いくつかあるけど一番危ないのはBitmapImage廻りの処理
Windowsをクラッシュさせる不具合がある
アプリクラッシュぐらいなら笑っておまえが悪いって言えるんだけど、OS落とすのは笑えない
Windowsをクラッシュさせる不具合がある
アプリクラッシュぐらいなら笑っておまえが悪いって言えるんだけど、OS落とすのは笑えない
548デフォルトの名無しさん (ワッチョイ 4f01-mvJZ)
2025/02/06(木) 00:55:30.83ID:FS647Etx0 初耳ですね
ソースよろしく
ソースよろしく
549デフォルトの名無しさん (アウアウエー Sabf-ItQP)
2025/02/06(木) 01:55:40.45ID:v0GfR9Aoa githubで検索したら再現コードあるよ
興味あるなら探してくれ
ビルドして24時間実行したらアプリ終了しても本当にWindowsが使えなくなって後悔した
興味あるなら探してくれ
ビルドして24時間実行したらアプリ終了しても本当にWindowsが使えなくなって後悔した
550デフォルトの名無しさん (スププ Sd5f-4ZsV)
2025/02/06(木) 08:35:40.67ID:0EdKF7HOd ウチの現場でもクラッシュ情報共有されてるわ
551デフォルトの名無しさん (ワッチョイ 8feb-8e3Q)
2025/02/06(木) 09:49:07.36ID:XIAzVrXt0 なんで貼らないの?
てかWPFというより.NETやOS側の問題では?
てかWPFというより.NETやOS側の問題では?
552デフォルトの名無しさん (ラクッペペ MM4f-nJIn)
2025/02/06(木) 12:58:44.47ID:mU8snJfJM 16ビット時代なら
いつからアプリ終了するとリソースが開放されると錯覚していた?
いつからアプリ終了するとリソースが開放されると錯覚していた?
553デフォルトの名無しさん (ワッチョイ 7f10-EoJC)
2025/02/06(木) 13:52:27.97ID:lMKQV2rT0554デフォルトの名無しさん (ワッチョイ 3f4e-4ZsV)
2025/02/06(木) 14:45:14.41ID:9UWORq1g0 Wordに埋め込んだPowerPointの図表が全部表示されなくなって埋め込み直す作業やってたチームがあったなぁ
元のpptがもうなくて作図からやり直してたのもあったなぁ
無駄に工数増やせる優れた技術だよなぁw
元のpptがもうなくて作図からやり直してたのもあったなぁ
無駄に工数増やせる優れた技術だよなぁw
555デフォルトの名無しさん (ワッチョイ 0f02-RvSc)
2025/02/06(木) 15:03:52.62ID:VdVQghET0 埋め込みドキュメントって、Web版やスマホ版officeだとどうなるんだ?
556デフォルトの名無しさん (ワッチョイ cf1a-UW6t)
2025/02/06(木) 15:27:14.03ID:2/5eY6oj0 新しくアプリをインストールすると登録されるcomコンポーネントをハックするのがたのしみだったって事がある。
実際にLotus NotesにExcelコンポーネント埋め込んで納品した事あるな
実際にLotus NotesにExcelコンポーネント埋め込んで納品した事あるな
557デフォルトの名無しさん (ワッチョイ 3f79-sZTl)
2025/02/08(土) 14:25:36.44ID:1vi9xXrm0558デフォルトの名無しさん (ワッチョイ 3f79-sZTl)
2025/02/08(土) 14:30:01.68ID:1vi9xXrm0 こんだけゴミクソのWindowsが生き残ってるのはCOMのおかげと言っていいから
もしWindowsを潰したいならマルチプラットフォームでCOMの車輪の再発明をすればいい
もしWindowsを潰したいならマルチプラットフォームでCOMの車輪の再発明をすればいい
559デフォルトの名無しさん (ワッチョイ 3f0f-4ZsV)
2025/02/08(土) 16:56:05.44ID:apo1n2eB0 WPFおじさんも現実を見れてなかったがCOMおじさんはさらにその上をいってるな
ここまで来るともうどうしようもない
ここまで来るともうどうしようもない
560デフォルトの名無しさん (ワッチョイ 4f01-rY0L)
2025/02/08(土) 20:27:11.99ID:WytOYVUs0 2D はSkiaSharpだろ。
561デフォルトの名無しさん (ワッチョイ d301-X+WN)
2025/02/09(日) 09:24:14.74ID:cS/Ji0GP0 comは何でもできるけどアレは難しいしバグあるとヤバい。
562デフォルトの名無しさん (ワッチョイ ab37-7Hf7)
2025/02/09(日) 11:04:11.31ID:pgX8P+m90 .net前は昔VBでcom大量生産しとったな
j++なついわ
j++なついわ
563デフォルトの名無しさん (ワッチョイ 1e10-6f6K)
2025/02/09(日) 16:03:00.59ID:nVH+xYHa0 COMにもいくつかレイヤーはあって、統一的なABI、実行時型情報、プロセス間通信、OLEオートメーション、コンポーネント埋め込み…とあるうち
大体のOSでもプロセス間通信まではどうとでもなる。LinuxのdBusやMacのAppleScriptではOLEオートメーションのようなこともできる
無いのはコンポーネント埋め込み(OLEドキュメント/ActiveXコントロール)ぐらいでこれはほんと惜しい
大体のOSでもプロセス間通信まではどうとでもなる。LinuxのdBusやMacのAppleScriptではOLEオートメーションのようなこともできる
無いのはコンポーネント埋め込み(OLEドキュメント/ActiveXコントロール)ぐらいでこれはほんと惜しい
564デフォルトの名無しさん (ワッチョイ de67-7Hf7)
2025/02/09(日) 16:34:55.70ID:V2Ler+rt0 あれ?
いまのパワポはエクセル埋め込めんの?
いまのパワポはエクセル埋め込めんの?
566デフォルトの名無しさん (ワッチョイ 0610-X+WN)
2025/02/11(火) 11:21:04.97ID:xvrepIy10 色をTomatoとかSalmonとか配色に応じて修正してるけどさ、面倒くさいよね
WPFらしさというなら、やはり、Foreground="Red"なのだろうか、青のグラデーション、中央に表示されるMessageBox、そして警告音
古き良き00年代を懐しむデザイン
WPFらしさというなら、やはり、Foreground="Red"なのだろうか、青のグラデーション、中央に表示されるMessageBox、そして警告音
古き良き00年代を懐しむデザイン
567デフォルトの名無しさん (ワッチョイ fabd-imkm)
2025/02/12(水) 23:37:37.53ID:BRhQn8Rr0 >>565
昔調べたわ。結局あれ実現したのか?
昔調べたわ。結局あれ実現したのか?
568デフォルトの名無しさん (ワッチョイ 23af-+SyQ)
2025/02/17(月) 13:32:38.13ID:Xd6W91C/0 observableCollectionもっと使いやすくならないの?何で範囲指定できないのか。
569デフォルトの名無しさん (オイコラミネオ MM69-cd+Z)
2025/02/17(月) 18:51:26.75ID:rqJoDalTM 拡張メソッドをお使いください
570デフォルトの名無しさん (アウアウエー Sa13-2xCh)
2025/02/17(月) 18:52:59.12ID:9JWN7J4Va observableみたいな変な仕組み一掃してもらいたい
UIのせいでデータ側に変更強いるのは思想に反してるだろ
UIのせいでデータ側に変更強いるのは思想に反してるだろ
571デフォルトの名無しさん (オイコラミネオ MM69-cd+Z)
2025/02/17(月) 18:57:00.96ID:rqJoDalTM IListをお使いください
572デフォルトの名無しさん (ワッチョイ e5e3-d9ak)
2025/02/22(土) 08:14:35.24ID:WrgPAAGU0 変更があるたびにイミュータブルなVMを毎回作り直すようにしてone-way bindingのみにするだけで遥かにシンプルになるのにね
さすがにDataContextを根本から差し替えるのは非効率すぎるからReactのVirtualDOMのような最適化は必要
VMの差分比較だけでいいんだから技術的にはVirtualDOMなんかよりよほど簡単なはずだけど、そういうフレームワーク無いのかな
さすがにDataContextを根本から差し替えるのは非効率すぎるからReactのVirtualDOMのような最適化は必要
VMの差分比較だけでいいんだから技術的にはVirtualDOMなんかよりよほど簡単なはずだけど、そういうフレームワーク無いのかな
レスを投稿する
