WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22

■ このスレッドは過去ログ倉庫に格納されています
2017/12/13(水) 23:35:47.18ID:muTUiD7C
Windows Presentation Frameworkについて語るスレ。

前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part21
http://mevius.2ch.net/test/read.cgi/tech/1494288553/

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

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
2018/05/13(日) 10:48:35.00ID:nDD5wzJU
コンパイルして起動時間が一桁早くなるってのは十分な魅力だと思うが
2018/05/13(日) 10:49:14.92ID:i7PAGBqe
>>203
>>202でも書いたけど日本ではスパゲティシステムだらけで移植のコストが高すぎたから受け入れられなかった

海外では日頃から品質を高める努力をしていたので移植が容易にできた
そして様々なメリットを享受することができた

利点を示せなかったのではなく
利点を示したけど日本だけが利点を受け入れる下地ができてなかっただけ

つまり日本はハブられたんだよ
いじめられっ子がリア充の生き方なんつまらないと負け惜しみを言うようなもの
キツネとすっぱい葡萄の心理というやつだ
2018/05/13(日) 10:52:56.28ID:VCvSTJHc
>>204
起動は確実にクソ遅くなるよ
今までは共有ライブラリとしてシステムにインストされいて自然にメモリにキャッシュされてた大量のDLL達を、
ローカルにバンドルしていちいちディスクからロードするんだから
2018/05/13(日) 11:03:04.42ID:nDD5wzJU
>>206
.net nativeはスタティックリンクだから、ライブラリの中で使っている部分だけ切り取って本体に取り込んでリンクするんだわ
通常はファイルサイズが激減します
2018/05/13(日) 11:06:50.54ID:VCvSTJHc
>>207
勘違いしてるようだけど、.NET CoreのSCDと.NET Nativeは別物だよ
SCDは.NET Coreランタイムと依存DLLを全部バンドルするだけ
2018/05/13(日) 11:15:03.29ID:nDD5wzJU
>>208

一番要望の多いnative取り入れないとは思えないが、情報あるの?
2018/05/13(日) 11:22:25.15ID:i7PAGBqe
体感的にわからない程度に起動が遅くなるかもしれない

デメリットってそれだけ?
2018/05/13(日) 11:23:47.84ID:VCvSTJHc
>>209
https://blogs.msdn.microsoft.com/dotnet/2018/05/07/net-core-3-and-support-for-windows-desktop-applications/
あくまで.NET自体を簡単にバンドルできるのが売りだ
.NET NativeはあくまでWinRT版の.NETの機能で、今出てる.NET Coreとは関係ない
ちなみに、.NET CoreではNuGetパッケージを結構細かく分割するのが普通だから、
WinFormsやWPFがそれぞれ丸ごと一つのNuGetパッケージになるようなことはたぶんない
必要なNuGetパッケージをある程度小分けで取捨選択できるようにはなるから、
今のSystem.Windows.Forms.dllよりは結果的にロードするサイズが小さくなる可能性はあるよ
2018/05/13(日) 11:34:23.20ID:nDD5wzJU
>>211
将来はともかく、最初はこの程度なんかね
2018/05/13(日) 11:39:17.10ID:QSiC/kkG
よく分かんないけど
動作環境の.NETバージョンに影響されずに済むって話じゃないの
2018/05/13(日) 11:44:29.93ID:VCvSTJHc
>>210
全部バンドルしちまえってのは今時の流行りで基本的には良いものだけど、あえて挙げるならこんなとこかな
・配布サイズがクソ大きくなる
・DLLのディスクキャッシュが共有されないのでメモリを食うかも
・.NETに重大な脆弱性や不具合が見つかってもユーザーの裁量で.NETを更新できない
・NuGet必須なのでインターネット環境がないとビルドすらできない
・NuGet必須なのでキャッシュなしの状態だとビルドがクソ遅い
2018/05/13(日) 11:46:21.62ID:VCvSTJHc
・.NET Coreは(NuGetのせいでもあるが)デバッグが遅い
も追加で
2018/05/13(日) 11:56:03.56ID:gN1ETgni
>>201
どうやら違う世界に生きてるようだ
2018/05/13(日) 12:00:18.98ID:olmzHM0E
>>214
こいつC#使ったことないやろ…
2018/05/13(日) 12:05:59.25ID:vAxwPzXD
>>214
RuntimeStoreも知らないようだし、NuGetがインターネット必須ってのも大嘘
ユーザーの裁量でRuntimeを更新できないってのも嘘
2018/05/13(日) 12:06:45.67ID:VCvSTJHc
>>217
最近はずっと.NET Core&C#&Azureやってるよ
一般的な常識に基づく推論と俺の個人的経験で書いただけだから、間違いがあるなら具体的に指摘してるれると助かる
2018/05/13(日) 12:07:59.36ID:FNCE059f
corefxやcoreclrも知らないからユーザーの裁量でランタイムを更新できないって発想になるんか?
2018/05/13(日) 12:08:12.97ID:hwu0eulf
>>216
そちらは新規開発案件の1割以上がc#を使ってる世界ですか?
不思議な世界ですね

こちらの世界は全ソフトウエア開発者で.Net Coreを知ってる人が
1%以上いるかどうか怪しいです
2018/05/13(日) 12:09:07.71ID:FNCE059f
>>219
配布サイズが大きいのは、RuntimeStoreのない時代かもしくはランタイム自体をアプリに同梱する場合ね
2018/05/13(日) 12:09:52.99ID:dLXOPcbs
>>221
ああ奴隷の世界ねごめんよ
2018/05/13(日) 12:11:36.53ID:hwu0eulf
>>223
いい加減に空想の世界から出て来いよ

.Net Coreなんてほとんど誰も知らない
C#使ってる中でも知られてない
みんな跨いでいく
225214
垢版 |
2018/05/13(日) 12:11:45.00ID:VCvSTJHc
デスクトップでCore使うメリットはSCDで、当然それは大前提だと思ってたんだけど
システムにCore入れるならそれこそ何の意味もなくね?
2018/05/13(日) 12:14:31.02ID:hwu0eulf
サーバサイドでも使われてない
デスクトップでも使われてない
業務でも使われてない

趣味で使うのがちょうどいい
C#大大大大好きだけど.Net CoreやAsp.net CoreやUWPは早く消えてほしい
2018/05/13(日) 12:17:23.58ID:dLXOPcbs
>>224
Stackoverflowのreportでも見て現実を直視しろよwww
2018/05/13(日) 12:19:44.68ID:dLXOPcbs
>>225
どうも思い込みが激しいようだ
どっちかって言うとSCDこそ特殊な場合で、SideBySideでランタイムをインストールする方が良い
2018/05/13(日) 12:21:24.73ID:LtcW78m3
>>225
Microsoftのブログくらい読めよ
https://blogs.msdn.microsoft.com/dotnet/2018/05/07/net-core-3-and-support-for-windows-desktop-applications/
2018/05/13(日) 12:26:39.99ID:VCvSTJHc
>>228
だからそれFull .NETのサイドバイサイドと比べて何のメリットがあるの?
2018/05/13(日) 12:29:17.88ID:LtcW78m3
>>230
>>229
2018/05/13(日) 12:31:43.28ID:ENNgICED
>>230
たとえば.NET4.5.2と4.6.1はSideBySideでインストールできないっしょ?
2018/05/13(日) 12:37:57.79ID:VCvSTJHc
>>232
結局システムに.NETを入れさせなきゃいけないのは同じだよね
.NET Coreなんか頻繁にアップデートされてるから事実上はほとんど特定のアプリと一対一になるだろうし、
アプリ側で.NETのバージョンを上げたくなったらまたそのアプリのためだけにまた特定バージョンのCoreをインストールさせるのか?
そのとき前のバージョンを安全に削除できるかどうか誰がわかる?
開発環境でのテストくらいにしか使えないよこんなの
2018/05/13(日) 13:04:22.39ID:kjz8UZqt
まだ実用化されていない技術のブログ記事上げてドヤってる
それは既存の.Net Coreの利点じゃないだろ?
2018/05/13(日) 13:05:48.16ID:kjz8UZqt
コアのアーキテクトの戦略がフラフラしてる
魅力のないロードマップがそれを物語ってる
2018/05/13(日) 22:00:07.98ID:ENNgICED
>>233
前のバージョンを削除www
2018/05/13(日) 22:01:26.62ID:RTDdDgUS
>>230
こいつSideBySideなんて知らんのやろ
2018/05/13(日) 22:07:34.73ID:yk+U0xvA
>>236-237
.NET CoreのSideBySideを利用したデスクトップアプリの正しいデプロイサイクルを具体的に説明してくれ
2018/05/13(日) 22:24:25.44ID:yk+U0xvA
ちなみに.NET Coreって月一くらいのペースでバージョン上がってるんだが、それ全部SideBySideするってことだぞ?
アプリとは別にシステムの.NETのバージョン管理の余計な手間が増える以外になんかSCDと比較してメリットある?
2018/05/13(日) 22:27:27.84ID:F2hiJGIV
>>239
全部とかただのキチガイか
2018/05/13(日) 22:30:48.25ID:F2hiJGIV
>>214
NuGetって言葉覚えたてかな?嘘ばっかwww
2018/05/13(日) 22:55:13.58ID:yk+U0xvA
>>240
結局アプリごとに必要とするバージョンが違うケースが多いはずだからSCDでいいだろと言ってるんだけど、これだけ言っても伝わらない?
2018/05/13(日) 22:57:05.68ID:F2hiJGIV
>>242
RuntimeStore
2018/05/13(日) 22:59:58.25ID:9k6A64Mq
>>242
>アプリごとに必要とするバージョンが違うケースが多い
なんで?
2018/05/13(日) 23:21:18.21ID:yk+U0xvA
>>244
そりゃ.NET CoreかつFDDのアプリ自体が(WinFormsやWPFがサポートされてもなお)稀だろうし、
フレームワークの方も月一で更新されてるとなれば共有できるケースは現実にはほとんど無いでしょ
246245
垢版 |
2018/05/13(日) 23:23:46.38ID:yk+U0xvA
もちろんデスクトップアプリに限った話な
サーバーだと一括で複数のアプリをデプロイしたりすることは普通にあるからもちろん意味はあるよ
2018/05/13(日) 23:46:18.97ID:vj3G+EXI
WPFってグラボの違いでどれくらい速度変わってくるものなの?
ハイスペックグラボ使う意味ある?
2018/05/13(日) 23:55:08.61ID:F2hiJGIV
>>245
妄想おつ
2018/05/14(月) 02:28:15.65ID:tinSsmGQ
大変そうだな。予防線はりまくりマウント取ろうと形だけは前傾で
2018/05/14(月) 19:24:27.32ID:wio42IgJ
デスクトップ対応はありがたい
業務系でウェブアプリはめんどくさいだけなんだよね
2018/05/16(水) 17:32:30.01ID:39uyimjr
>>211
https://github.com/dotnet/corert

corertとかあるけどこれちゃうの?

ちょくちょく試すけど相変わらずx86がうまく生成されなかったりIssue多すぎて
比較的アクティブとはいえ使い物になるのかよくわからん状況だけど

VCランタイムすら不要の単体PEファイルになってdnSpyとかじゃなんも見れなくなるし
こういうのがプロジェクト単位でざっくりと組み込み検討できそうだから
デスクトップ向けの.NET Coreも結構期待してたりするんだけどね

WinformsとWPFのポーティングは朗報だけどどうせ改良する気はないんだろうし
クロスプラットーム化は無理でもせめてReference Source下じゃなくOSSにまでして提供してほしいもんだぬ
2018/05/19(土) 08:24:35.34ID:sLNELaog
なんでDateTimePickerすら入ってねえんだこのゴミは
こんなんだから普及しねえんだよ
2018/05/19(土) 09:37:09.80ID:z3BmCHYg
オープンソース化もあり得るって話だぜ
なんであれが無いんだーじゃなくてなければ作ってプルリクが当たり前になるのかな
数年後には有料サードパーティライブラリのような高級コンポートが標準化されるかもね
2018/05/19(土) 18:26:15.09ID:F+BrwfqW
標準でnumericupdownすらないWPFに何を言っても無駄
2018/05/19(土) 18:30:55.35ID:m/ZPa8pN
欲しいものは自分で書いてプルリクを出せばいい
同じことをみんなやりだすからすぐにリッチコントロールが整備される
2018/05/19(土) 18:39:08.87ID:F+BrwfqW
そういえば標準じゃフォルダー選択ダイアログもないな
2018/05/19(土) 18:39:33.95ID:JYjAGOT8
WPFって正しく作法に従った汎用コンポーネント作るの結構難しいから、外野がプルリク投げてもなかなかマージされないと思うぞ
MS謹製のToolkitですら悲惨な品質でWPF本体にさっぱり採用されないまま潰れちゃったし
2018/05/19(土) 20:17:50.91ID:NGcY8HAA
Material Design In XAML ToolkKit 使えばいいじゃん
259デフォルトの名無しさん
垢版 |
2018/05/23(水) 19:30:21.93ID:Au5e7VGg
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』

204GM
2018/05/23(水) 19:52:37.44ID:zdZwe3wq
FormsとWPFはUIテスト自動化への対応具合どうなの?
UIテスト自動化が快適にならないと躊躇してしまうよね
いちおうappiumのドライバは見つけたけど業務で使いこんでるぜって類の記事が全然出てこない
2018/05/23(水) 20:26:37.25ID:aEBJ6EJ+
>>260
https://github.com/Microsoft/WinAppDriver
2018/05/23(水) 20:29:25.96ID:aEBJ6EJ+
1.0.0が出たのは去年の10月だからね
263デフォルトの名無しさん
垢版 |
2018/05/24(木) 23:37:42.82ID:tm7qGCzu
prismってmessengerパターンするならEventAggregator使うようになったの?
InteractionRequestは過去のも?
2018/05/25(金) 00:20:28.41ID:n6q2Xjj/
今のprismってMSの手を離れて単なるコミュニティプロジェクトの一つだからなあ
開発者の好みが反映された寄せ集めのツールキット集に過ぎず、もはやリファレンスでもなんでもないよ
2018/05/25(金) 00:30:47.36ID:N3c6aWbU
>>263がInteractionRequestが好みなら自分でプロジェクトにコントリビュートすればいい
EventAggregatorよりも充実させればInteractionRequestがPrismの主流に見えるようになるだろう
今のPrismってそういうもんで、トレンドを追っても何の意味もない
2018/06/06(水) 21:19:46.59ID:3palNJuH
Datagrid内comboboxのdatatemplateのバインディングがどうやってもできないw
2018/06/08(金) 06:20:36.50ID:y7GGIwCz
>>266
サンプル見ると、スタティックなオブジェクトリンクしている
268デフォルトの名無しさん
垢版 |
2018/06/14(木) 10:39:07.09ID:LFx88o2A
Prism6.3でInteractionRequestのRaiseAsync使おうとしたらないんだけど
問題あってなくなったの?
2018/06/14(木) 23:50:25.85ID:rYhQU2t8
>>268
どこの馬の骨とも知れないメンテナの気まぐれ
君が復活させてもいいんだぞ
2018/06/15(金) 10:37:05.30ID:uIGrLsPa
共同ツール 1
https://seleck.cc/685

https://trello.com/
ボードのメニュー → Power-Upsから拡張可能 Slack DropBoxなど
Trello Chrome拡張機能 elegant
ttp://www.kikakulabo.com/service-eft/
trelloのオープンソースあり

共同ツール 2
https://www.google.com/intl/ja_jp/sheets/about/

共同ツール 3
https://slack.com/intl/ja-jp
https://www.dropbox.com/ja/
https://bitbucket.org/
https://ja.atlassian.com/software/sourcetree
https://www.sketchapp.com/
ttp://photoshopvip.net/103903
ttps://goodpatch.com/blog/sketch-plugins/

Trello Chrome拡張機能プラグイン集
https://chrome.google.com/webstore/search/trello?_category=extensions

Slackプラグイン集
https://slack.com/apps

Sketchプラグイン集
https://sketchapp.com/extensions/plugins/
https://supernova.studio/
271デフォルトの名無しさん
垢版 |
2018/06/19(火) 20:48:04.40ID:CqYMFqFG
>>252
>>254
いつかはWPFって思ってたのに移行できねーよそれじゃ

まあ、趣味ではWebサイトの方で忙しいから最近はC#あんまできないんだが
2018/06/19(火) 21:58:45.18ID:TcCdudwM
UWPにもnumericuodownないんだよな。死ねよと思う。
2018/06/20(水) 00:56:27.15ID:iNKqsiVm
タッチデバイスのためとはいえ、ほんと実用軽視には反吐が出るな。UI統一は大失敗。
2018/06/21(木) 06:23:26.72ID:EAKDFUEl
>266
俺はこんな感じでやってるけど
comboBoxItemListはDataGridItemのプロパティにしてる

<DataGrid
ItemsSource="{Binding Path=dataGridRowList}">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>

<ComboBox
ItemsSource="{Binding Path=comboBoxItemList}"
SelectedValue="{Binding Path=column1}"/>

</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
2018/07/03(火) 13:58:21.59ID:hHP/xN4T
質問失礼します

以下の2つのTextBoxはどちらも期待通りに動作しますが
2つ目はx:Staticを使っているため文字数が多くなっています

<TextBox
  HorizontalContentAlignment="Right"
  Background="Red"/>
<TextBox
  HorizontalContentAlignment="{x:Static HorizontalAlignment.Right}"
  Background="{x:Static Brushes.Red}"/>

新しく定義した型で1つ目のような短い記述を行いたいのですが、
HorizontalAlignmentのような列挙型では特に工夫することなく実現できるものの
Brushesのようなケースではどのようにすればいいか分かりませんでした

BrushesはRedのような静的プロパティをたくさんもつだけのクラスなので
Background="Red"という記述が受け入れられたり
この記述を行うときに入力補完が働いたりする仕組みが全く想像できないのですが、
そのような仕組みを新しく定義した型で使うことは可能でしょうか

もしご存知の方がいらっしゃれば教えていただけると嬉しいです
よろしくお願いします
276デフォルトの名無しさん
垢版 |
2018/07/04(水) 22:12:53.40ID:gFgZc5FG
AQ8
2018/07/05(木) 16:35:23.34ID:AeL6VB/V
AQ8
278デフォルトの名無しさん
垢版 |
2018/07/06(金) 15:11:57.62ID:tqXwTqfY
>> 275
wpfのソース
279デフォルトの名無しさん
垢版 |
2018/07/06(金) 17:14:31.95ID:qtqoxO2d
良きゲームだった
https://goo.gl/VuXjSo
280275
垢版 |
2018/07/06(金) 17:35:36.53ID:POKFC/+e
>>278
お返事どうもありがとうございます
以下のコードを読んでみたのですが、それらしい箇所を見つけることはできませんでした
お手数をかけて申し訳ありませんが、読むべきソースを具体的に教えていただけないでしょうか
どうぞよろしくお願いします

(NGワードのためURL省略)
2018/07/06(金) 17:37:36.95ID:POKFC/+e
280のURLです。NGワード回避のため一部省略しています

XXX = https://referencesource.microsoft.com/(中略)/System/Windows/Media

XXX/Brush.cs
XXX/Brushes.cs
XXX/KnownColors.cs
2018/07/06(金) 17:46:24.05ID:POKFC/+e
何度も申し訳ありません
(中略)の部分は #PresentationCore/Core/CSharp です
2018/07/06(金) 18:11:56.52ID:JJTPb7Ii
コンバーターが明示的に指定されてないけどデフォルトでそういう動作すると決まってるだけでしょ
そういう仕様
自分の作ったクラスは明示してコンバート
2018/07/14(土) 22:16:00.13ID:Dcwagk83
ようやっと過去の物をprismに移行した
livetさらば
2018/07/14(土) 22:34:34.49ID:VXqA7TkQ
ゴミが作ったもんなんて普通は使わない
2018/07/17(火) 20:53:28.21ID:ofYg0nnt
MSが作ったモノが使われなくなって早10年か。
2018/07/19(木) 10:20:00.48ID:jjazq+Ks
だが果たした役割も大きいで…見方によっちゃリーディングカンパニーではあった
2018/07/21(土) 09:51:31.74ID:gQtq62tQ
そう思ってるのはWPF関係者だけで
今の世の中に対してなんの爪痕も残せてない
影響はどこにも及んでない

FBがWPFをぼろくそに言ったことも忘れてる
そのFBはreact作ってる
2018/07/21(土) 10:34:17.53ID:FfPVWpYP
AndroidのGUIフレームワークなんか明らかにWPFを参考にしてるし、
今やWebのSPA開発の標準となったMVVMの発祥地でもある
まあプロダクトとしての設計や実装がアレだったが根本の思想はわりと広く受け入れられた
2018/07/21(土) 12:28:01.61ID:8fBGWCJL
うわぁこれは日本スゴいと同じメンタルですね
ダッサ
2018/07/21(土) 13:11:23.55ID:hBP8PKRm
MicrosoftのC#が発祥でパクられまくってる便利機能って多いよね
MVVM、MVC、Task、async/await、Linq、Rx、var、EF、、、
Nullセーフティなど最近は遅れる事があるけどSpanやrefタイプみたいな試みはまだまだ先を行ってるね
2018/07/21(土) 19:43:53.72ID:Zy/M/93a
webのMVVMとWPFのMVVMは全然別物なんだけど
2018/07/21(土) 19:45:43.37ID:Zy/M/93a
>>291
よく見たらMVCまでC#起源とか言い出してるし
韓国人みたいなメンタルになったら終わりだぞ?
2018/07/21(土) 21:50:51.30ID:2DvCBOqB
いい年こいて自己評価が低い奴ほど所持品や帰属集団を持ち上げるのよ
そうしないとアイデンティティが保てないからね
2018/07/21(土) 23:29:28.47ID:0xTgj6Q5
マカーのことですかね?
2018/07/22(日) 02:18:42.16ID:uvYJ1bPq
マカーは間違いない
2018/07/29(日) 12:03:09.03ID:F74jAWuk
ボタンにマウスが乗っかるときのアニメーションを切りたいんですが
どんなコードになるんでしょう
XAMLじゃなくてコードで書きたいです
2018/07/29(日) 12:05:47.07ID:lzRBxehA
>>297
テンプレートを丸ごと入れ替える
コードじゃなくてXAMLで書いてください
2018/07/29(日) 13:04:07.04ID:Zfn8669V
なぜ知ってる範囲だけで済まそうとして苦行をしようとするのか
2018/07/29(日) 15:35:50.53ID:F74jAWuk
ありがとうございました
出来ました!
2018/08/09(木) 13:35:42.03ID:iZ+v1VOW
FormsよりWPFの方が、VisualStudioがよく落ちるな
WPFって脆弱なイメージがあるけど大丈夫か
2018/08/09(木) 14:34:35.14ID:V+cwSzFl
ヒミツだ
2018/08/09(木) 14:41:06.52ID:dPMfUDyX
やりたかったのはJSPなのかも知れないが、
現時点ではそびえ立つ糞
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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