WPF(.NET, WinUI) GUIプログラミング Part32
WPF(Windows Presentation Foundation)について語るスレ。
前スレ
WPF(.NET, WinUI) GUIプログラミング Part31
https://mevius.5ch.net/test/read.cgi/tech/1674334396/
関連スレ
Windows 10 UWPアプリ開発Part 3
https://mevius.5ch.net/test/read.cgi/tech/1627556967/
コードを貼る場合は以下のサイトの利用をお勧め。
https://ideone.com/ >>158
ちょうどMAUI以外のフレームワーク覚えたいなって悩んでるとこだったから、俺もAvalonia触ってみようかな
MAUIと比べてどういうとこがいい? 枠がなくて背景が透明でマウスホバーで色が変わるボタンはどのように作れますでしょうか
ラベルなしのAppBarButtonのようなイメージです(AppBarButtonのラベルなしにしてもラベルのスペースが残ってしまいます)
Buttonの背景をTransparentにしてもできませんでした
HyperLinkButtonで色を黒にするとイメージ通りのものができていそうなのですが他に正攻法のようなものはありませんでしょうか >>155
WrapPanelで自作改行コントロールを使うのが楽 >>155
StackPanelの代わりにGrid入れ子にすればできそうだけど、面倒そう >>159
標準でDataGridがある、MacOS対応がCatalystじゃない(mono)、そこそこよく出来たMaterialDesign/FruentUIのポートライブラリがある(個人的オススメはFruentAvalonia)
MAUIよりはWPFに近いXAMLとか
最近VSCodeの拡張が出たので一気に生産性上がった AutoSuggestBoxの高さなんですが、高さを指定しないと上段1個目のように親要素の高さになりますが、数値を指定する以外にフリーの状態の高さ(下側のもの)にする方法はありますか?
https://i.imgur.com/XRguc77.png
https://i.imgur.com/eWwHNx3.png
```
<StackPanel Orientation="Vertical">
<StackPanel Orientation="Horizontal">
<Border Height="80" Width="100" Background="Blue"/>
<AutoSuggestBox Width="300" PlaceholderText="Test" Background="Red"/>
<AutoSuggestBox Width="300" Height="50" PlaceholderText="Test" Background="Red"/>
<AutoSuggestBox Width="300" Height="20" PlaceholderText="Test" Background="Red"/>
</StackPanel>
<AutoSuggestBox Width="300" PlaceholderText="Test" Background="Red"/>
</StackPanel>
``` WPFでリアルタイムの折れ線グラフを長時間更新し続ける場合、どのグラフライブラリがいいのかな?
ScottPlotでSignalPlotを使ってみたけど、時間が経つと重くなってしまいました。
更新方法は画面端で一度クリアでも、疑似スクロール(画面端で新しいポイント追加+画面外になるポイント削除)のどちらでもいいです。 そういえば昔レートをリアルタイム表示するグラフをWPFで作ってたな
懐かし issue見るとWinUI 3のx:Bindって前からメモリリークしまくってんだな WinFormsで特定のセルにボタンとかコンボボックスを設定していました。
DataGridView.Rows[row].Cells["special"] = new DataGridViewButtonCell();
行毎に特定セルの設定は異なります。
WPFではどうするのでしょうか? セルテンプレートに変化する分のアイテムを全部入りにしておいてビジビリティで見せる見せないとか?
まあきちんとしたカスタムコントロールを書いた方がいい気もする >>172
ありがとう。
セルテンプレートで出来ました。 最近、JavaでWEBアプリばっかやらされてたから浦島太郎何だが、.netってか、visual studioで業務アプリ作るなら何がオススメ?
売上の入力とかやるから明細入力が必須何だが 今は.net6がブレイクして猫も杓子もBlazorな感じだね、8でどうなるか知らんけど
donetコマンドあればVSCodeで開発できるVisualStudio要らない、という風潮はしばらく続くかな どうせWebで動かすならフロントエンドもTypescriptでええやんってなっちゃうんだわ。わしゃもう帰ってこれなくなっちゃった WinUI3ってWPFにくらべてスカスカデザインすぎね?
従来通り高密度のデザインにしたかったら使えないのか コンパクトモードってやつでしょ
ただ一部のコントロールしかコンパクトにならず
いまいち .NET 8でWPFにOpenFolderDialogが追加されたらしい 今更かよw
しゃーないからずっとFormsのフォルダダイアログ使ってたわ 1.43らしきものが来たけど、ドキュメント更新されないから詳細不明だ キターしようと思ったら先こされた
Release notesは1日ぐらいまたないと
いつもnugetが先 つか、WPFのWindows 11テーマ全然情報出てこねぇ
2年かかるのかよ
MSクソ お客様はOSに合ったUIを求めてるからな
例えば、Mac操作しててWindowsアプリの画面出てきたら発狂するわけです WPFのWin11テーマってそれWinUI3でわ?
しらけんど https://github.com/dotnet/wpf/discussions/7555
WPFのモダン化ということでここでみんなで投票したやん
で、Windows 11スタイルと>>185のFoldetDialogが決まったやん WPFのテーマは散々やらないやらないしてたのにやるのか どうせすぐに放棄される
MSのUIフレームワークは短命 短命だったUIフレームワークってSilverlightとWTLのこと? SilverlightはWPFのサブセット/軽量版だね WPFもまたブラウザー内で動作できたぞ
今は出きるのか知らんけど >>191
お客様「アプリのフォントをMacと同じヒラギノフォントにしてくれ」
俺「◯◯万円かかりますので、お見積りを出しますね」
お客様「ならいいです」 .NET8になってフォルダダイアログが追加された
要望が増えるとカラーダイアログとか増えていくのだろうか? WinSCPのGUIってなんのフレームワークですか? >>204
良くあるFluentと見た感じが違うのは独自コントロールなのかな Template Studioが.NET 8に対応してくれるのってかなり先になるのかな どうでもいいけどUIデザインころころ流行らされても開発者的には迷惑でしかないよな
FlatだのMaterialだのFluentだのどうでもええんじゃ でも使った瞬間に古さを感じるようなGUIがある
今の見にくくて使いにくいGUIの流行りが無くなればいいのにと思うけど >>212
そう?FluentUIは(慣れたので)割と直感的だけど
VSが採用したので長期政権(今から最低10年)になると期待しているよ 見た目リンクなのかタダの文字装飾なのかわからんGUIはダメだと思う
リンクにしても外部のwebへ誘導されるのかアプリ内なのかも遷移するまでわからない それってWinUI 3 Galleryアプリだと何処の事? クリック遷移する前に外部リンクか内部なのかわかるパターンを最近多分見たことがない
困ったときにアプリで何らかの対応をしてくれるのか
それとも一般的なヘルプに飛ばされるのか
オンラインヘルプは大体ヘルプになってないから死ねって思う windows10の設定だと上の方に普通の項目があって下の方にwebのヘルプ項目がある
ディスプレイだと上部に
ディスプレイの詳細
グラフィックの設定
と言うただの文字
下の方にwebのヘルプと言うタイトルの下に
プロジェクターまたはPCに接続する
複数のモニターをセットアップする
フォントサイズの調整
画面のちらつきを修正する
こちらもただの文字
にしてもこれ典型的なダメGUIだよな
オンラインヘルプと実際のやりたいことへ誘導は逆であって欲しい
ヘルプへは抽象的に、機能へは具体的に 全てのPCが常にwebに接続できると言う固定概念がアホすぎる へーwindows10とwindows11はかなり違うんだ
windows11は区別つくわ たしかwin7辺りまで区別はついたと思う
win8の辺りからメトロとか入りだしてゴミ化した 設定アプリでは外部リンククリックで
既定のブラウザじゃなくてEdgeに飛ばされるのが不満ではあるけど まあ今後はwindows10でのFluentと言ってもらえると誤解が少ない Fluentデザインでリンクする場合の推奨事項はいくつか書いてあるけどそれはだいたい守られていない
実装者の裁量に任されている
外部にナビゲーションする場合にどうしろとも言及されていない
リンクとボタンと機能があいまいになっていて
更に機能的に内部のナビゲーションでも文字だけになってる
設計の思想が曖昧過ぎる
ダメGUIができる >>224
つべこべ言わずにwin11使えよ全ては直感が導くから >>225
自分のメインマシンはwin11
一部移行できないノートがwin10
win11の設定でもクリックするまで外部のナビゲーションなのかツールなのかどうかわからない項目がある
青文字だと外部へのリンクかと思わせといて
サウンドのトラブルシューティングは内部のツールを呼ぶ
ボタンにしとけと思うが…
MSは意図的なのかどうかわからないけどそこの所のポリシーが一貫してない
Fluentデザインでも規定されていない 横から脱線ですが
>>226
>サウンドのトラブルシューティングは内部のツールを呼ぶ
これが前々から設定アプリの一部で使われていると言われているReact Native画面ですか? ボタンの右側に外部へ飛ばすアイコンみたいなの付けたらいいと思う 勝手に一人でみんが脇見もせずに一つ論点を議論する場だと思う馬鹿もいるしw DataGridでヘッダー行だけスクロールしない方法ありますか? 久しぶりに触ったけど
ListBoxの右クリメニューからの追加テンプレートの編集>生成されたアイテムの編集>現在のアイテムを編集が選択できなくなってるのはなぜ???
他は編集できるのに… あああサンプルでもいいから何かないと選択できないのか
今まで気付いて無かったわ… よく帳票のデザインツールであるようなルーラーを表示するコントロールってありますか? TreeViewでnodeを選択したら、binding側で反応する方法がわかりません。 >>238
BindableSelectedItem みたいな添付プロパティを作るんだ Avaloniaで使われてるReactiveUIどうなんだ
Community Toolkit + ReactivePropertyで十分か avaloniaぐらいFixしてくれれば安心使えるけど
WinUI 3はあれだけIssueあがってるのに前回のリリースでfixしたの10未満
もうゴミ WinAppSDK 1.5 experimental 1
キター マイクロソフト自体も諦めてTeamsアプリではReact使ってるからもうReactでいいだろ flutterだめなのか
Dartが覚えないといけないけどflutter自体は好きだなぁ c++/c#しかできないけどdart覚えるくらいならjs覚えてreactやりたい 当時は当然ビザなし旅行など出来なかったわけで
「貧乏で死にそうだから一家で日本に移住したい」なんて理由でビザが下りるはずもない
密航後に申請して永住許可を貰ったならまだしも、密航は嘘だというのは信じがたいね
まあ、幼児のときに親についてきただけのことを非難するのはどうかとは思いますが Dartのコードや文法と言うより
あのカッコだらけの内容が受け入れられない Stack Overflow では、Ruby が3強のGo/Rust/Elixir を抜いて、遂にトップへ!
Ruby, Elixir : 9.3 万ドル
Go : 8.9
Rust : 8.7
多くの言語 : 6.5
PHP : 5
Dart : 4.4
さらに、YouTube で有名な雑食系エンジニア・KENTA は、
Scala, PHPをオワコン認定した
PHP, Dartは、学位なしの高卒がやる言語。
一方、Ruby on Rails, AWS Solution Architect が最高位の2千万円!
だから、KENTAが推奨する初心者向けのキャリアパスは、Rails → Go のみ MordernWPF
WPFUIの他に
WPF Modernとかあったんか
ほんと.NETのUI周りはMicrosoftがずっと放置してから
リソース分散の無駄な事やってるよな
AvaloniaUI
UnoPlatform
MAUI
これもリソース分散の無駄 そもそもが再利用について考えてないOSチームが悪い