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
2020/01/15(水) 14:23:45.70ID:VmaxE9Gg0
>>94
MIDIやSynthesizerのWemAppli、Wasmに関する話らしい:
https://twitter.com/DasSurma/status/1217129248038670337

遅延に関しては、Webゲームを試してみる限り気が付かない程度だった。
https://twitter.com/5chan_nel (5ch newer account)
2020/01/15(水) 14:52:56.83ID:VmaxE9Gg0
>>106
他にも色々あるけど、例えばこんなものがある。
スライダーを動かすと音が変わる。
これで遅延のほどは分からないが、遅くて使い物にならないようなものではないことは分かる:
https://csound.com/wasm/Sliders.html
2020/01/15(水) 16:19:59.37ID:cciB5/G30
アクション性の高いfpsゲームなんかもブラウザでゴリゴリ動く時代にそんな遅延なんて気にならんと思うけど…
マイクロ秒単位まで求められるならしんどいが
2020/01/15(水) 16:30:44.61ID:VmaxE9Gg0
告白しますと、以下の簡易テニスゲームはモバイル機器では音ずれが起きるのですが、それは、HTMLのaudio要素を使っているからで、HTML5のWebAudio技術を使えば直ると思っています。
実際、ちゃんとしたWebゲームでは音ずれは起きていません。
https://yutakaaoki.github.io/demo_tennis/
2020/01/15(水) 16:37:25.36ID:VmaxE9Gg0
>>109
なお、そのサイトとはWebGLを使っており、WebGL 1.0はOpenGL 4.1から正式対応したので、OpenGL 4.1以上に対応したGPUでないとがたがたすることがあります。
Intel CPU内臓の Intel HD Graphics というGPUは、初期バージョンのものは OpenGL 4.0
までの対応なので、WebGLを使う場合に Chrome79 ではハードウェアアクセラレータが使えません。
2020/01/15(水) 17:45:15.98ID:ga1RRQJH0
>>108
> マイクロ秒単位まで求められるならしんどいが
まあそこまで求められたらデスクトップアプリでも厳しいと言うか汎用OS上だと無理じゃね?
2020/01/15(水) 17:51:40.07ID:5+cs/n4Td
>>111
うん、そう思う
なんでブラウザアプリでできないことってローカルファイルへのアクセス以外はあんまなさそうな感じする
まぁ細かな面倒くささとかはもちろんあるけど不可能ってわけではないしね
2020/01/15(水) 18:01:39.62ID:R0PftabM0
画像上でラバーバンド描画しようとすると
最低でも10fpsぐらいで画像送信する事に
なるけど、Webで出来る?
2020/01/15(水) 18:07:44.51ID:VmaxE9Gg0
>>112
Chrome限定になるけど、Native File Systemなるものでローカルファイルシステムが自由に使えるようになる。
ただし、デフォルトでは無効化されているので、
chrome://flags/#native-file-system-api
でEnableにする必要がある。
また、これは、HTML5 の File API とは別。
そっちの API では、ブラウザの特殊な記録領域にファイルが格納されてしまう:
https://qiita.com/pentamania/items/ada07c45d4e5cc139c03
2020/01/15(水) 18:43:42.42ID:VmaxE9Gg0
>>113
ローカルPCでJavaScriptやWasmを使ってグラフィックを描けば、ネット回線を使った画像の転送は要らない。
2020/01/15(水) 18:50:18.59ID:VmaxE9Gg0
>>99
ローカルにcgiサーバーを起動してローカルFSを使えるようにする場合、そのままだとあらゆるHTMLアプリがローカルFSを使えてしまうようになってしまうためセキュリティーホールになる。
それを防ぐには、ポリシーファイルというものを作ってその中に親となれるHTMLアプリのローカルディレクトリ名を列挙しておいて、それ以外の場所からのHTTPリクエストは禁止するようにすれば良いと思う。
CGIのHTTPリクエストのヘッダの中にOrigin: URLアドレスという項目があるので、それを利用して判定することが出来る。
2020/01/16(木) 11:53:28.01ID:+OFg0GPw0
blazorだかよう知らんがHTML/CSS嫌いの俺には
究極の選択になりそうだ。

C#+BlazorでHTMLさわるか
クソ言語のDart+Flutter

究極の選択
Flutterで一本アプリ作ってるが..
2020/01/16(木) 12:12:49.68ID:+OFg0GPw0
まぁ、去年はFlutter三昧だったけど、Dartのクソにもなれたし。Flutterの豊富なWidgetは最高。
2020/01/16(木) 18:25:40.85ID:k/5sr9Gm0
>>116
撤回。
HTTPリクエストのOriginもRefererも偽装が可能なのでその方法だとやはりセキュリティーホールになると思う。
対策は、公開鍵、秘密鍵の様な方法を使えば可能だと思われる。
2020/01/16(木) 19:58:45.06ID:+yHPpuH8M
>>119
クライアントの偽造を心配するならLocalServer側で変な所を読み書きしようとしてないかをちゃんとチェックして必要に応じてエラーを返すように作るべし
2020/01/16(木) 21:14:41.23ID:Z4nuhBaF0
>>100
UWPだとそういう抜け道をつぶすためにローカルホストへのソケット通信が出来なくなってる
2020/01/16(木) 21:34:01.69ID:F1bGXBdo0
AF_UNIXまで潰されている事に気がついた
時には殺意が湧いた。
どんなメリットがあるんだろう?
2020/01/17(金) 07:00:24.10ID:C1DTJTUYM
>>121
なんか泥縄な対処にしか思えない
2020/01/17(金) 08:13:04.05ID:rhst4WoKd
>>102
そしてアプリの数だけlocalサーバーを起動しておくんですね
2020/01/17(金) 09:09:50.92ID:0sb73h15M
ローカルのTCPサーバーなんてIPCなどで普通に使う
お前が思っているほどダサい発想ではない
2020/01/17(金) 11:28:48.32ID:H3mEbxL10
Socket を使えば、簡単に local server が作れることがわかった。
cgi や html を扱う HTTP (プロトコル)も、基礎はTCP/IPで、
それが socket を使って行われる。
socketは元はUnixのもので、WindowsでもWinSockが、ほぼ互換性があるとされる。
Javaでもsocketは使えるのでAndroidでも使えると思われる。
2020/01/17(金) 11:29:55.06ID:H3mEbxL10
>>124
理論上は、local serverは一つ起動しておけばよい。
native file systemへのアクセスは、そこから呼び出されたcgiが担う構造となる。
2020/01/17(金) 12:21:49.36ID:jY/iqPsQ0
>>126
元はBSDの AF_UNIXで同一マシン内の通信用
それをネットワーク対応にした。
その名残がinetd
2020/01/17(金) 12:33:38.01ID:H3mEbxL10
cgi側が作り出した10桁くらいの乱数を、cgiを使いたいWebアプリ側に入力する
事で認証にする方法を思いついた。
JavaScriptでもnativeのクリップボードの内容をペーストできるので、ボタンを
押しただけでこの動作を自動化することも出来る。
ただし、それをするとフィッシングされてしまうことがあるので、cgi側がメッセージボックス
を出してユーザーに確認することが必要だと思われる。

または、cgiとWebアプリを組にして配布し、両方に公開鍵と秘密鍵を埋め込んでおき、
乱数に対して正しく応答できるかで相手確認をする方法も思いついた。
130デフォルトの名無しさん (ラクッペ MM41-iig7)
垢版 |
2020/01/17(金) 14:36:01.09ID:VsLYB/xRM
(笑)
2020/01/17(金) 15:05:57.50ID:H3mEbxL10
socketのaccept()関数には、通信相手のIPアドレスが分かる機能がある。
ブラウザにはhtmlをlocalにコピーする機能がある。
localに保存したhtmlである場合のみ、native file systemへのアクセスを許可する
ようにlocal serverを作ることも出来るかもしれない。
悪意サイトをlocalに保存する人は少ないだろうから。
2020/01/17(金) 15:11:37.90ID:cvIKbp4L0
>>131
で、長々と書いてるそれWPFと何の関係があるの?
2020/01/18(土) 11:52:24.23ID:6/b4ybIYM
Blazor Server、Webasm、PWA、Hybird、Nativeと開発の選択肢が充実してきた
FormsもWPFももうおしまいだ
俺が言ってた通りBlazorだけでおkになる日も近い
2020/01/18(土) 12:12:23.57ID:IiMusaQC0
まともな書籍とプロジェクトテンプレート
が出来たら考える
135デフォルトの名無しさん (ワッチョイ 6e63-iig7)
垢版 |
2020/01/18(土) 15:10:52.79ID:Y/6fKVhZ0
頭がおkなんだな可哀相に
2020/01/21(火) 17:59:28.63ID:F+78+GL10
UWPで非sandbox環境がくるらしいけどいらね
2020/02/07(金) 08:57:48.75ID:WtTaalc4M
xamlからいいhtml吐き出してほしい
2020/02/07(金) 18:15:31.38ID:FaDRN6V/d
BlazerはSilverlightと同じ道を辿らないの?
(´・ω・`)
2020/02/07(金) 20:08:52.67ID:qWP9NwZGM
>>138
業界標準とされているWebAssembly吐くから大丈夫だとは思うけど諸行無常の世界だからな
セキュリティインシデントでブラウザがサポート終了する未来しか見えない
2020/02/20(木) 20:07:03.06ID:2lspeRt80
Windows7のサポートも終わったし、WPFは爆発的に普及する予感。
2020/02/20(木) 20:54:07.13ID:TOp7IeKo0
風が吹いても桶屋は儲かるからね
2020/02/20(木) 23:11:42.00ID:2lspeRt80
しかしwinformを15年以上使い続けてる奴が一番の勝ち組だな。Windows界のコボラーだね。
2020/02/21(金) 01:02:53.18ID:y0O9XxV30
業務アプリ界隈だと結構いそう
2020/02/21(金) 06:03:42.16ID:R2e8qzsK0
winformでも高dpi対応ではあるけど注意事項が多すぎてオワコンだよねえ
2020/02/21(金) 14:16:49.70ID:VCdp581Ia
サックッと作る時はWinFormのほうが手早い
2020/02/21(金) 20:50:40.81ID:ZPaNFwsF0
>>145
それは慣れてるだけでは?
2020/02/21(金) 21:15:39.28ID:JeYRrjOG0
嫌ぁWPFってWindowsAPIから遠いでしょぅ
例えば、WORD/EXCELの保存ダイアログの
上部のディレクトリ指定ツールバーに
SendMessage送ってディレクトリ変更出来る?
2020/02/21(金) 23:01:26.74ID:gYJx2Nw80
ポトペタでGUIをでっち上げるスピードはForms最強だよね。
2020/02/21(金) 23:05:30.03ID:JeYRrjOG0
>>148
100%固定ならそう思う
2020/02/22(土) 10:42:55.04ID:NV/PY/Op0
>>147
それWinFormの方が楽とかあるっけ?
2020/02/22(土) 10:43:37.08ID:NV/PY/Op0
>>148
ポトペタならたいして変わらなくね?
2020/02/22(土) 12:53:10.87ID:JN6kvW3hM
xamlのポトペタは無理
2020/02/22(土) 16:41:28.87ID:0idtaAPr0
>>150
formのコントロールならSendMessage
で大概okでしょ
2020/02/22(土) 17:12:09.74ID:NV/PY/Op0
>>153
> 例えば、WORD/EXCELの保存ダイアログの
> 上部のディレクトリ指定ツールバー
の話だよ?
2020/02/22(土) 18:23:48.33ID:zXnzI4owM
>>154
winapiはwinformとは関係ないだろ
2020/02/22(土) 18:33:34.58ID:Yl8XFkwD0
winapiって呼出規約のことかw
2020/02/22(土) 19:03:25.64ID:NV/PY/Op0
>>155
>>147に言ってやれ
2020/02/23(日) 22:10:03.38ID:Ib9jhEaG0
誰もmvvmを言わなくなったな
2020/02/24(月) 15:00:22.17ID:uOgko4BBd
ムヴヴム?
2020/02/24(月) 20:17:43.76ID:wFmJh66Ed
それだけ当たり前になったってことなのか
2020/02/25(火) 07:58:46.37ID:Y2rSQyp7a
WPFよりもWinFormのテキストが圧倒的に多いから取っ付きやすい
2020/02/25(火) 09:01:34.02ID:9ZnkAFSDM
dobonにwpf関連は無いからな
2020/02/25(火) 19:24:40.01ID:R4Aqu9Lj0
MSDNにWPF関連のドキュメントたくさんあるやん
2020/02/25(火) 21:16:04.36ID:DINBU8UK0
MSDNがゴミになって何年経っただろうか
2020/02/25(火) 21:20:49.37ID:DPkPOqav0
まぁ良く言って汚物溜め。
探しても探しても、ろくな情報が出てこない
2020/02/26(水) 15:09:07.36ID:6Gmih54SM
>>165
じゃあまとめて
2020/02/26(水) 15:25:47.56ID:Sy5iffYbd
>>165
何の情報探したの?
2020/02/26(水) 15:36:20.52ID:6wufcnv4M
msdnは嘘は書いてないのだろうけどかなり分かり辛い
2020/02/26(水) 16:03:28.79ID:tRXCtCnh0
MSDNは日本語がクソなだけで英語は普通じゃん
2020/02/26(水) 16:16:17.15ID:4RHSA7Wy0
MSDNブログ日本語版行方不明事件とか
2020/02/26(水) 16:16:17.02ID:eJgtcN890
間違いを指摘しても修正されなくなったし、スナップショットも出なくなったし、
ドキュメント保守部門が丸ごと消えたんじやねーの。
担当の開発チームが自分勝手に編集してるだけのように見える。
OSSの悪いところをマネ
2020/02/26(水) 16:37:33.74ID:J/Z+GoCJM
もうMSにとってITドカタは客じゃないんだよ
いい加減気付け
173デフォルトの名無しさん (ラクッペペ MM86-ZWRU)
垢版 |
2020/02/26(水) 20:02:53.90ID:rTIdtBEAM
そういう意味ではAzureとOffice使ってくれるのが今のMSの「顧客」だろうな
2020/02/27(木) 03:53:58.13ID:dXMdECOr0
ライブタイル廃止か
175デフォルトの名無しさん (ワイーワ2 FF82-WaSC)
垢版 |
2020/02/27(木) 09:09:52.38ID:c/azzpGnF
ライブタイル使ってないもん
スタートメニューに張り付けられるのは便利だけどアイコンあれば充分だしな…
2020/02/27(木) 14:46:15.67ID:CxyJejD60
>>171
OSSを推奨した人が多かったので、OSSが台頭。
それまでプロプライエタリソフトは、買った人の利便性を考え、
必ずしも営利にとらわれず親切心からマニュアル類を整備してきたが、競争上
OSSに勝たなくてはならなくなったので、親切心だけでは
どうしようもなくなって、利益を生まないなら放置されるようになった。
2020/02/27(木) 14:49:35.08ID:CxyJejD60
>>176
もう一つは、OSSの台頭によって、MS以外のプロプライエタリの開発環境が死滅または弱体化してしまったため、MSの競争相手がプロプライエタリの開発環境ではなくOSSの開発環境となったため、マニュアル整備もOSSと同レベルにまで水準を落とされた。
2020/02/28(金) 15:38:15.48ID:uB1B7NHg0
MSでOSSを推奨した人って誰?
2020/02/28(金) 16:12:51.89ID:DkMBLb2P0
今のCEOのナデラやろ
その前のバルマーまではOSSを敵対視してた
180デフォルトの名無しさん (ワッチョイ caad-+OLB)
垢版 |
2020/02/28(金) 16:23:48.09ID:SkbRzeQX0
OSS側が調子こいてきた件
https://mag.osdn.jp/20/01/27/160000
2020/02/28(金) 17:13:17.79ID:GfVfgYuK0
昔と時代が違う

Ruby による今世紀最大の起業家、Vagrant の作者・Mitchell Hashimoto(HashiCorp)だろ

その後、Docker, Kubernetes。
RedHat が、CoreOS を買収、MS が、GitHub を買収

今は、OSS からしか、富を産まない
2020/02/28(金) 17:21:49.69ID:uB1B7NHg0
オープンソースからコードパクればcoplandやEdgeのような失敗はしないし、
開発費を抑えれるから利益が出るという話ですね。

IT業界全員ジョブスですね。搾取されるはPGだけ。
2020/02/28(金) 17:34:17.92ID:FKrGRQL40
OSSを使えば、みずほ合併も20年も
かからなかったという事ですね。
2020/02/28(金) 18:17:55.30ID:EdLV0oRD0
>>178
舛添要一
NTT
2020/02/29(土) 15:36:50.61ID:ZbPwrBbB0
>>184
IBM
2020/02/29(土) 18:23:52.48ID:Y1vfXlkR0
>>183
当時の上層部が皆消えたからな
187デフォルトの名無しさん (ワッチョイ c3db-rVtL)
垢版 |
2020/03/03(火) 05:28:49.83ID:kLlDc7SA0
https://opentk.net/learn/chapter1/img/2-hellotriangle.png
2020/03/03(火) 20:44:38.08ID:g6HFOQ500
livetメンテされてたのね・・・
2020/03/11(水) 08:29:20.50ID:4840XTXYd
wpf はComboBoxのカスタマイズが異常に面倒
TextBox部分の背景色を変えたいだけなのに、どれだけコードを書かせるのかと
最終的にはComboBoxの上にBoarder挟んでTextBoxを重ねたわ
2020/03/11(水) 21:59:25.37ID:+pF602Na0
スタイルの一部分をちょこっと変えたいだけなのに
スタイル全書き換えだからなあ
バージョンアップでスタイルに手が入ったら追随しないとまずいし…
2020/03/13(金) 20:05:34.14ID:O03YLpkA0
>>188
もう死に体だけどな
ほそぼそと延命措置されてるだけだから、早々にPrismに乗り換えた方がいい
2020/03/14(土) 02:22:32.03ID:l44yuRg30
livetはいまokazukiさんとかがメンテしてるみたい
2020/03/14(土) 11:19:03.16ID:mQl6GBYb0
>>192
okazukiさんだけじゃね?
PRとか来たらそれの対応するような程度だけだから、もう死に体よ
2020/03/14(土) 16:56:38.37ID:C2Lif+b90
prismよりlivetが得意なことってどういうところ?
2020/03/14(土) 17:27:18.65ID:XdSo6thHM
日本語のコメントが沢山ある?
2020/03/14(土) 17:35:22.75ID:Er3VTtJvM
UWP風WPFテーマファイルってないの?
2020/03/14(土) 18:30:12.07ID:l44yuRg30
>>196
mahappをヌゲットで当てれば一応それっぽくはなる
2020/03/16(月) 09:25:08.00ID:+qP8+Lkd0
>>194
昔見た感じだと、ビヘイビアが充実していたから、そこだけ使うのもありじゃね?
2020/03/16(月) 22:37:15.09ID:fxc5hzKu0
>>194
日本製だけあって日本語での使い方がすごく豊富
prismのregionとかみたいに「そこまで高尚なのはいらないな」みたいな使い方には最高
2020/03/17(火) 12:47:21.90ID:UPG5ONLMd
prismもOSSになってから標準機能だと思って使ってたものがごっそり消されたりするから怖いけどね…
2020/03/17(火) 13:03:38.78ID:aozOj1qca
今のprismは有志数人がやってるコミュニティプロジェクト
機能の取捨選択などはMSの推奨とかではなく、あくまでメンテナの個人的な好みに過ぎない
もはやまともな旗振り役はどこにもいない
2020/03/17(火) 13:49:58.97ID:oS6PobjrM
かと言って、WPFを素で使うのは辛いわ
2020/03/17(火) 16:10:11.04ID:bG+6fXAX0
激辛だわ
2020/04/07(火) 23:06:06.45ID:bAc1yzNH0
PackageReferenceでPrism.UnityをぬげっとしたプロジェクトをVisualStudioインストーラーでインストーラーを作成
そのインストーラーでWIndows10にインストールするとエラーでViewが立ち上がらない

Packages.configでぬげっとすると問題ないんだけどPackageReferenceが地雷なの?
2020/04/08(水) 06:05:58.17ID:VR2/ByYb0
>>204
そういうの有りそうw
インストーラの依存関係から漏れてるかな?
2020/04/17(金) 17:07:14.15ID:DEUx8cw20
ScrollViewerの最小サイズを指定する方法を教えてください
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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