WPF(.NET4.x, .NET Core) GUIプログラミング Part23at TECH
WPF(.NET4.x, .NET Core) GUIプログラミング Part23 - 暇つぶし2ch1:デフォルトの名無しさん
19/05/16 07:52:32.39 8fOYIMEO.net
Windows Presentation Frameworkについて語るスレ。
前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part22
スレリンク(tech板)
関連スレ
Windows 10 UWPアプリ開発 Part 2
スレリンク(tech板)
コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
URLリンク(ideone.com)

2:デフォルトの名無しさん
19/05/16 12:11:07.29 7Bq3MhCf.net
2

3:デフォルトの名無しさん
19/05/16 13:49:41.99 fwGb8lUO.net
スレタイXAMLはあったほうがよかったんじゃ?

4:デフォルトの名無しさん
19/05/16 14:58:46.33 6HLPrznt.net
UWPは別のスレがあるな

5:デフォルトの名無しさん
19/05/16 19:32:09.26 lkxfo5od.net
前スレから
URLリンク(devblogs.microsoft.com)

6:デフォルトの名無しさん
19/05/16 20:00:20.87 O824UyCl.net
WPFにx:bind来てくれないのかいぃぃ

7:デフォルトの名無しさん
19/05/17 16:05:39.31 GiXqVPbm.net
ゲームエンジン作れますか?

8:デフォルトの名無しさん
19/05/17 16:23:31.74 GiXqVPbm.net
openfiledialogとsystem.diagnostics.process.startの違いはなんでしょうか
openfiledialogのほうがエクスプローラが開かなかったですが
実現したいのは、フォルダを開いてファイルを選択するというものです
var dialog = new OpenFileDialog();
dialog.InitialDirectory = @"C:";
System.Diagnostics.Process.S


9:tart("explorer.exe",@"c:");



10:デフォルトの名無しさん
19/05/17 17:30:07.31 GiXqVPbm.net
openfiledialogはファイルを開くためのものですね
勘違いすてまし

11:デフォルトの名無しさん
19/05/17 17:40:31.39 GiXqVPbm.net
wpfでフォルダのファイルを、リストビューなどで表示するには何を使用するんでしょうか

12:デフォルトの名無しさん
19/05/17 18:23:47.47 xZgfJxB6.net
リストビューで表示するんなら使用するのはリストビューでしょw

13:デフォルトの名無しさん
19/05/17 18:44:46.93 GiXqVPbm.net
URLリンク(dobon.net)
wpfでaddrangeが出てこないのですが、なぜでしょうか
addしか出てきません
addrangeはSystem.Collections.Generic;に含まれるそうですが、これはきちんと記述しています

>>11
表示するコントロールはそうなんですが、一覧を取得する方法を調べてました

14:デフォルトの名無しさん
19/05/17 19:04:56.93 zsP3biP5.net
>>12
Formsのほうのサンプルじゃないの?

15:デフォルトの名無しさん
19/05/17 19:24:12.06 GiXqVPbm.net
>>13
wpfじゃないんですかね
だとしたら何を使うんでしょうか
マイクロソフトのリファレンスはC#用とwpf用わかれてるわけではないんですよね?

16:デフォルトの名無しさん
19/05/17 19:55:42.73 GiXqVPbm.net
for使うことになってるんすかね?

17:デフォルトの名無しさん
19/05/17 20:00:22.36 efANPUq5.net
this.ListBox1.ItemsSource = Directory.EnumerateFiles( @"C:\Windows" );

18:デフォルトの名無しさん
19/05/17 20:04:39.86 efANPUq5.net
もしくは
foreach ( var file in Directory.EnumerateFiles( @"C:\Windows" ) )
{
this.ListBox.Items.Add( file );
}

19:デフォルトの名無しさん
19/05/17 20:07:19.28 R147Wd4Y.net
>>14
リファレンスは分かれてるというか、違う。名前空間が。
datagrid にしても、forms で使用されているコントロールとwpfで使用されている物とは違う。
webにあるサンプルなど、どちらのコードかってのは、明記されてない限り読み込まないとわからない

20:デフォルトの名無しさん
19/05/17 20:23:25.50 GiXqVPbm.net
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(files[i]);
}
>>16,17
これでいけました
ありがとうございます
addrangeはないみたいなので、ループしないと駄目なんですね
>>18
名前空間で判断するしかない感じですか
formと共通してるものもあれば、違うものもあるって感じで、ごっちゃになってて少し分かりづらいですね

21:デフォルトの名無しさん
19/05/18 12:57:14.57 vGWC+tVZ.net
>>19
>addrangeはないみたいなので、ループしないと駄目なんですね
違うんじゃないかな。あなたが、>>16の手段使わずに、>>17の手段つかった
からじゃないの?

22:デフォルトの名無しさん
19/05/18 19:02:24.50 M6x4drXG.net
wpfでレイアウトしたいです
よくある、左、中央、右というペインを作りたいです
単純にグリッドを3つ並べるだけでは駄目なようですが、良いコントロールはありますか?
>>20
そうかもしれません、、、

23:デフォルトの名無しさん
19/05/18 19:28:57.10 vGWC+tVZ.net
>>21
先の質問についてだけど、データバインドを理解していないんじゃないだろうか
WPF使うんだったら、データバインド使わないと損ですよ。

24:デフォルトの名無しさん
19/05/18 19:32:47.57 GtOtQ7tS.net
>>21
レスであるように、先にバインド覚えたほうがいいよ。いっぱいコントロール自作することになるから

25:デフォルトの名無しさん
19/05/18 19:42:11.85 4KuUGYIj.net
>>21
Gridを分割するかDockPanel
境界をマウスで動かしたりしたいなら前者

26:デフォルトの名無しさん
19/05/18 20:10:22.57 M6x4drXG.net
>>24
gridですか
formにあったsplitcontainerみたいなのがなくなっていたんでわからなかったです
>>22,23
知らなかったので。今バインドってのをやってみました
Xamlに変数をバインドしておいて、プログラム側でそれを書き換えるというイメージでいいんですか?
<Button Content="{Binding X}" />
みたいな感じですね
解説が難しいのでなんのメリットがあるのかイマイチわかりませんが、Xaml側のX変数が複数だった場合、手作業で何箇所も書き直すより効率的だねってことですかね。または、フォームを複数作った場合、別のフォームでも数値を共有できたり。

27:デフォルトの名無しさん
19/05/18 20:32:07.67 ejkLT9cK.net
WinFormsの事は忘れるんだ

28:デフォルトの名無しさん
19/05/18 20:46:12.34 M6x4drXG.net
忘れます
もともとwinformのソフトの文字がちっちゃくて、不満だったから自分でつくろうと思ってるので
あれって、拡大とか出来ないんですね

29:デフォルトの名無しさん
19/05/18 21:51:41.94 XXYGI5ia.net
Data Binding なら、Vue.js だろ

30:デフォルトの名無しさん
19/05/18 22:35:23.21 4jqg+g7M.net
>>21
レイアウト関係はパネルっていう種類のコントロールを使う
ここをGoogle翻訳につっこんで読むといい
URLリンク(wpf-tutorial.com)
そんな難しい英語じゃないからそのまま読んでもいいけど

31:デフォルトの名無しさん
19/05/19 08:39:23.42 A9JEys8J.net
>>29
どうも ベースはグリッドでやってみます

32:デフォルトの名無しさん
19/05/19 09:46:46.46 1wu/sFtt.net
>>30
他のパネルあるのになんでグリッド使うの?

33:デフォルトの名無しさん
19/05/19 10:06:41.73 A9JEys8J.net
>>31
wpfだとグリッドが一般的なやり方だと思っていたからです
どういうセオリーがあるのかまだわかっていません

34:デフォルトの名無しさん
19/05/19 10:26:31.56 1wu/sFtt.net
>>32
>>29読めよ

35:デフォルトの名無しさん
19/05/19 10:47:57.25 rGWK4TSn.net
StackPanelしか使ったことないな…

36:デフォルトの名無しさん
19/05/19 11:06:57.27 A9JEys8J.net
>>33
読みました
エクスプローラのような3ペインにどれが適切かわかりませんから、今ひとつずつやってます

37:デフォルトの名無しさん
19/05/19 11:51:22.73 A9JEys8J.net
今stackpanelを使っていますが、エクスプローラのように左右が細長くて、
20% 60% 20%というふうに出来ますか?子要素に何を指定するといいですか?%指定は出来ないようです。
絶対値を指定すると全画面にしたときにレイアウトが崩れるから駄目ですよね

38:デフォルトの名無しさん
19/05/19 12:26:40.42 A9JEys8J.net
更に境界線を←→で調整したいです
チュートアレば教えてください

39:デフォルトの名無しさん
19/05/19 12:42:10.72 nGjZxT14.net
>>37
GridSplitter

40:デフォルトの名無しさん
19/05/19 13:11:30.58 PmP7x88s.net
>>37
URLリンク(blog.okazuki.jp)
ここをイチから読みなせえ

41:デフォルトの名無しさん
19/05/19 13:58:42.30 A9JEys8J.net
↑あい

42:デフォルトの名無しさん
19/05/19 16:35:16.33 A9JEys8J.net
>>38
どうも 自動で境界線にフィットしてくれるんですねこれ
<StackPanel Orientation="Horizontal">
<Button Content="hoge" />
<GridSplitter HorizontalAl


43:ignment="Stretch" Width="5"/> <Button Content="hoge" /> <Button Content="hoge" /> </StackPanel> でもこれやっても動作しないのはなぜでしょうか? ボタンも画面いっぱいまで広がりません。



44:デフォルトの名無しさん
19/05/19 16:41:45.96 nGjZxT14.net
>>41
GridSplitterは縦分割もしくは横分割したGridで使うものだよ

45:デフォルトの名無しさん
19/05/19 16:52:21.95 A9JEys8J.net
↑確かに名前の通りですね
gridで試してみます

46:デフォルトの名無しさん
19/05/19 17:40:18.44 9qpO3YcP.net
>>36
>%指定は出来ないようです
おいおい勝手に決めちゃうな、ちゃんとできるよ。
単に2:6:2になる値にすればいいだけ。

47:デフォルトの名無しさん
19/05/19 19:24:20.26 A9JEys8J.net
アスタリスクで指定できるんですね
すみません

48:デフォルトの名無しさん
19/05/19 19:51:56.06 A9JEys8J.net
mvvmという概念がよくわからないのですが、
mはモデル、vはビュー、vmはビューモデルですよね
wpfのプロジェクトでいうと、ビューはxamlで、vmはmainwindow.xaml.cs
mはビューに表示する数値を処理する関数を保存しておくファイル(自分で作る?)という感じでしょうかね
超絶簡単なチュートはないでしょうか?どこも説明が難しいです。

49:デフォルトの名無しさん
19/05/19 19:57:41.44 1wu/sFtt.net
MVVMなんて最初は意識しないでformsみたいにxaml.csにそのまま処理書くのでいいよ

50:デフォルトの名無しさん
19/05/19 20:01:39.69 2BHDEQ1u.net
>>46
*.xaml.csはViewの一部。ViewModelじゃない。

51:デフォルトの名無しさん
19/05/19 20:11:28.61 A9JEys8J.net
>>47,48
そうします
わかわからんですし、大規模になることはないので

52:デフォルトの名無しさん
19/05/19 20:55:09.12 qecuZkKO.net
wpf & mvvm が普及しなかったのはこの敷居の高さなんだよな…

53:デフォルトの名無しさん
19/05/19 21:15:35.77 ugKit8lS.net
>>50
コミュニティに頼らずに自前でそこそこサポートするのが売りだったのに、この辺りから放棄し始めたんだよな

54:デフォルトの名無しさん
19/05/20 05:06:11.18 GmmrlA8O.net
wpfって将来性がないってことですか?formの代替えって他にあるんでしょうか?

55:デフォルトの名無しさん
19/05/20 06:34:33.69 xhf1KGbK.net
Electron

56:デフォルトの名無しさん
19/05/20 06:47:23.90 SII4uEKR.net
極論するとWindows上で動くアプリケーション自体が下火だからなぁ
PC上のローカルなリソースを触らない限りはJavaScriptのSPAで書いとけばWindows以外でもそのまま動くし
MVVMもVueやAngularで始めるほうが理解しやすいように思えるし

57:デフォルトの名無しさん
19/05/20 07:05:09.37 GmmrlA8O.net
想像ですけど、jsベースだとローカルでもwebでも行けるから便利ということですよね
v

58:デフォルトの名無しさん
19/05/20 11:49:59.73 GmmrlA8O.net
機能からgridレイアウトをやって、ある程度形はデキたんですが、縦に目一杯表示されません。
調べるとverticalalignmentをストレッチにすればいいということなんですが、駄目です
親も子もストレッチかけてるんですが、どこが駄目でしょうか。
ウインドウのサイズがデフォルトのサイズの場合は100%までストレッチされますが、全画面表示まで拡大すると、stackpanel_innerにデフォルトのサイズが適用されます。
URLリンク(ideone.com)

59:デフォルトの名無しさん
19/05/20 12:18:39.68 UpaSmFYv.net
>>56
stackpanel_outerはDockPanelに変更して、MenuにDockPanel.Dock="Top"追加
stackpanel_innnerは無くすか、StackPanel以外(DockPanel/Grid等)にする

60:デフォルトの名無しさん
19/05/20 15:28:14.16 GmmrlA8O.net
↑どうもデキたです
stackpanelがなぜ駄目なんでしょうか
htmlのイン�


61:宴Cン要素のような扱いなんでしょうか。



62:デフォルトの名無しさん
19/05/20 16:43:30.51 03iVSpcv.net
>>52
以前は、ストアに対応していない(しない)などの方向から
WPF終了説が言われていたのだけど、それが変化してきたようで、
WPFの利用がもっと増加する可能性も出てきたみたい
ここ数か月の発表に注意してみるといいかもしれない。
デスクトップアプリが見直されてきている流れもあるので。

63:デフォルトの名無しさん
19/05/20 16:54:53.51 7rlywuEl.net
MSが一度見限ったプロダクトを見直した例はない
時間は有限なんだからこういうのは悪い方に考えたほうがいいよ

64:デフォルトの名無しさん
19/05/20 23:12:06.78 F98TWhut.net
「見限った」「見直した」って具体的にどういうことを指しているんだろう。

65:デフォルトの名無しさん
19/05/20 23:31:21.89 ouD9VRE7.net
見限った → メンテナンスモードに切り替えた
見直した → 再度アクティブな開発を始めた
かな

66:デフォルトの名無しさん
19/05/20 23:54:57.44 F98TWhut.net
そういう意味でなら、WPFはまだ見限られてはいないわけだ。

67:デフォルトの名無しさん
19/05/21 00:19:28.65 00e1l8X+.net
WPFはとっくの昔にメンテナンスモードに入ってる
UWPだけがアクティブ

68:デフォルトの名無しさん
19/05/21 00:41:18.11 TRpqXUmi.net
>>64
>UWPだけがアクティブ
WPFはともかく、MSのこの数か月見てた方が良いよ

69:デフォルトの名無しさん
19/05/21 00:59:54.43 KXg6s5t+.net
>>65
Build 2019でCore対応以外になんかWPF/WinFormsの新しい話題あったっけ?
MSを信じるのは勝手だけど、本当にそれが自分にとってプラスになるのかは一度立ち止まってよく考えてみた方がいいよ
君自身のキャリアの問題だ

70:デフォルトの名無しさん
19/05/21 05:16:38.24 Ht8dWCV6.net
結局、c++が普遍的なんでしょうか。
やったことはないですが、個人で使うものではないとか。

71:デフォルトの名無しさん
19/05/21 06:07:31.76 GLuE/7pA.net
>>66
そのCore対応がデカいんじゃないか
どれだけ投資してると思ってんだよ

72:デフォルトの名無しさん
19/05/21 07:43:54.26 J5RbKPKD.net
>>68
そう思う?移植完了の後はロードマップ真っ白なのに?
ちなみにdotnet/wpfは4人くらいで作業していて、必要最小限の単純な移植を超える仕事は厳しく禁じられているようだ

73:デフォルトの名無しさん
19/05/21 08:07:51.81 jKYjm96N.net
>>65
core対応でアクティブだと言えるならWPFだけじゃなくwin formsも
アクティブと言うことになるけど…
アクティブじゃないよ
もう開発してないよ

74:デフォルトの名無しさん
19/05/21 09:04:23.15 TRpqXUmi.net
一度捨てたと思ったデスクトップの必要性が再認識されてきている。
これから夏にかけxaml islandの話題がMSより増えて行くだろうから
まずはそちらを気にした方が良い。デスクトップもUWPだけで行きま
しょうというMSの方向性が大きく変化したことは確かだから。
UWPのコントロールもそれぞれが共有できる方向に変化してきたので。
ただし、FORMに関してのxaml ilandはどうやるの?という疑問はある。
とはいえ、WPFが新たに拡張されてという話とはちょい異なる。
この数か月のマイクロソフトの発表をみましょ。

75:デフォルトの名無しさん
19/05/21 09:15:29.44 1xdRixLR.net
>>69
もしかしてひとつのフレームワークに4人ってのが少ないとでも思ってる?

76:デフォルトの名無しさん
19/05/21 12:54:23.99 JEq70M1l.net
MSレベルで4人雇ったら、年5000万位かかるか

77:デフォルトの名無しさん
19/05/21 1


78:3:27:03.74 ID:J5RbKPKD.net



79:デフォルトの名無しさん
19/05/21 16:39:45.49 1xdRixLR.net
>>74
C#だってフルタイムは一人だけやでw

80:デフォルトの名無しさん
19/05/21 19:25:13.12 GLuE/7pA.net
あれだけ押してるBlazorもフルタイムは1人だもんね

81:デフォルトの名無しさん
19/05/21 19:31:06.98 00e1l8X+.net
WPFが好きすぎて頭が逝っちゃってる人の集まり?

82:デフォルトの名無しさん
19/05/21 19:52:22.69 L8K016dB.net
嫌いなのに張り付いてる方が頭が逝ってるだろ

83:デフォルトの名無しさん
19/05/21 19:54:10.43 n+3BxqXh.net
ID:00e1l8X+はマ板で呟いてくれんかね

84:デフォルトの名無しさん
19/05/21 20:12:32.33 kdkwqODu.net
>>73
MSレベルっつーか人月単価100万ってそんなに優秀じゃないぞ

85:デフォルトの名無しさん
19/05/21 23:36:21.83 lCMEKqdP.net
この中でvb.net派の人いるかな....
新しいプロジェクト作成するたびににC#に移行しようと思っても、やっぱりVB選んでしまう...
おかげでC#のサンプルでも即座にVBに変換できるようになったわ

86:デフォルトの名無しさん
19/05/22 04:03:18.31 CgjVdHTS.net
これだから、アラフィフのおじいちゃんは...

87:デフォルトの名無しさん
19/05/22 07:50:35.59 5R6mSu1H.net
ぶいびーww

88:デフォルトの名無しさん
19/05/24 23:18:25.57 a/+LqS67.net
別にVB.NETでもかまわんと思うけどね
C#を推奨したい日本マイクロソフトのバイアスがずっと続いてるけど、ちゃんと他人にも分かる様なコード書けば問題無い
まあ、それがVBプログラマーの悪い所だが

89:デフォルトの名無しさん
19/05/25 00:17:27.23 9Yazqsa/.net
VB.NETでラムダを多用するようなソースコードを書くと見づらくてたまらないんだよな
まあ一人で書いてるソースであれば好きにすればいいんじゃないとも思うけど
引き継ぎや担当者アサインのことを考えるとちょっとなあ
若手・未経験者に今更VB.NETを覚えさせるのも後ろめたいというか倫理的に問題があるし
かといって「VB.NET出来ます」っていう人のスキルって大抵VisualStudio2005~2008あたりで止まってる人が多いし
新しめの(VS2015/2017あたりの)文法を使うならそれこそC#で書くほうがスマートだし

90:デフォルトの名無しさん
19/05/25 00:26:30.22 1AJ3YN9O.net
俺は基本的にはVB派だが、ラムダ式だけは何とかならんかったのかと思うわ
あとヌル合体演算子はよ

91:デフォルトの名無しさん
19/05/25 04:17:14.56 vfi1mbHq.net
今あえてC#よりVBを選ぶ理由を知りたい

92:デフォルトの名無しさん
19/05/25 04:17:54.71 WHAQulv7.net
マイクロソフトが好んでやりたいというより、VBで行きたいという声がスゲー多いためにそうせざるを得ないということだろな。これが人間社会ちゅうものなんだろう。

93:デフォルトの名無しさん
19/05/25 04:42:40.16 P9kv6fd4.net
リストボックスに画像表示するにはなんの関数を使うのか教えてください
ヒントだけでいいです
String[] img = System.IO.Directory.GetFileSystemEntries(
@" C: \Users\ワイ\Desktop"
);
//Directory.GetFileSystemEntries Method
for (int i = 0;i< files.Length;i++) {
listbox_right.Items.Add(img[i]);
これだとテキスト表示になります
そもそもlistboxはテキストのみなんですかね。

94:デフォルトの名無しさん
19/05/25 05:02:01.28 lXRt6Qhw.net
>>89
WPFの場合はコードはそれでいい。
XAML側でListBoxのItemTemplateを定義し、ImageのSourceプロパティに{Binding}でバインドする。
何を言っているのかまるで意味がわからないと思うが、それがWPFなんだよね。
URLリンク(docs.microsoft.com)
まずはこの辺りのドキュメントを完全に理解できるようにならないと話にならない。
はっきり言って、今更こんな複雑怪奇な終わったフレームワークを無理に覚える価値はない。時間を無駄にする前にWPFは止めなさい。

95:デフォルトの名無しさん
19/05/25 05:12:14.62 P9kv6fd4.net
じゃあ代わりに何をすればいいのですか?electronはメモリ食うという噂が
vs codeは実際そうです

96:デフォルトの名無しさん
19/05/25 05:55:05.76 EXrLD8QH.net
>>91
Windowsのデスクトップアプリは迷走しまくっている
UWPも先行きが怪しくなってきて、もはやMS自身も今後どれを推奨するか明確に決まっていないという無茶苦茶な状況だ
・スキルの汎用性を重視する : いっそWebへ乗り換えるか、ElectronでWebベースの技術で作る
・学習コストを最小化する : WinForms
なるべく時間を無駄にしないためには今ならこのどちらかだろうな

97:デフォルトの名無しさん
19/05/25 07:33:36.50 P9kv6fd4.net
electronですか、rpgエディタみたいなの作れますか・

98:デフォルトの名無しさん
19/05/25 07:53:36.86 H3aX7Y36.net
>>92
横からですが、参考になりました。
いろいろググってて数年前の情報で、「新規開発で WPF を選択しない理由はない」みたいなことが書いてあって、
調べ始めたところでした。
ざっと読んだ感じ、昔の MFC や OWL の Doc / View みたいな感じ?

99:デフォルトの名無しさん
19/05/25 08:16:31.16 iifAFaPR.net
>>93
そりゃ作れるけど、ゲームならUnity使ったほうがいいんじゃないか?
ゲーム用の開発スイートだからゲーム本体はもちろんだが、簡単なGUIアプリも十分に作れる
あと個人的にアドバイスさせてもらうと、ゲームはまずゲーム本体から作った方がいい
俺も初心者の頃に同じことをやろうとしたことがあるから分かるが、ツールから作ろうとすると結局後で無駄になる
エディタなんてexcelで十分

100:デフォルトの名無しさん
19/05/25 09:04:48.17 P9kv6fd4.net
勉強も兼ねてるので1から作ろうとしています
2d専用のウルフエディタみたいなものを目指してますね
electronだと重いみたいなことが言われますが、2dなら問題ないと思います

101:デフォルトの名無しさん
19/05/25 15:17:08.94 P9kv6fd4.net
バインディングの超簡単なサンプルってないですか?
テキストボックスに文字をバインドするという仕組みなんですが。
<TextBox Name="textbox_center" Text="{Binding x}"/>
プログラム側でのx変数への文字の指定方法が見つかりませンでした
また、そもそもバインドとは、タグのプロパティに変数を指定する仕組みということでしょうか?
また、set ; getみたいなやつの意味がわからないです
超簡単なサンプルのページ教えてください

102:デフォルトの名無しさん
19/05/25 15:27:32.07 px4+wQIP.net
>>97
> set ; getみたいなやつ
自動実装プロパティのことかな

103:デフォルトの名無しさん
19/05/25 15:28:35.22 WHAQulv7.net
WPF binding
で検索するといっぱい出てくるよ

104:デフォルトの名無しさん
19/05/25 17:08:11.22 6cjkDEDO.net
>>97
set;get;はここ
URLリンク(ufcpp.net)
てかそれの意味がわからないならWPFより先にC#の勉強しろや

105:デフォルトの名無しさん
19/05/25 17:09:54.90 P9kv6fd4.net
バインディングが効かなかったのはTextBoxコントロールを使っていたからですね
TextBlockにしたら効いたのですが、なぜでしょうか?
どちらも単なるテキストの表示です

106:デフォルトの名無しさん
19/05/25 17:17:51.87 MUGP4AlX.net
Electron は、Chromium(ブラウザ) + Node.js(サーバー)だから、300MB


107: もある! ツクールなども、Node.js か、Ruby on Rails じゃないの?



108:デフォルトの名無しさん
19/05/25 17:51:36.28 UKk+E4BI.net
そもそもデスクトップアプリ作るのにWPFがいまいちだからElectronって、後退してるよな。

109:デフォルトの名無しさん
19/05/25 18:34:01.11 P9kv6fd4.net
すみません
wpfがんばります

110:デフォルトの名無しさん
19/05/25 18:58:35.19 QpbNX3PX.net
C#経験が評価されて今度ASP.NETの案件に参画するかもしれん
同じC#だが、覚えるのキツイな
だがついにデスクトップアプリマンの俺がデスクトップアプリから脱皮する時がきたわ
windowsサーバーだから個人開発では使えないし潰し効かないのが難点だがな・・・

111:デフォルトの名無しさん
19/05/25 19:30:48.30 6cjkDEDO.net
>>105
最近はASP.NET coreがあるから個人でもLinuxサーバで使えるのでは?

112:デフォルトの名無しさん
19/05/25 19:43:52.34 QpbNX3PX.net
>>106
そうなんだ
まだASP.NET MVCの基本しか勉強してないから知らなかったよ
個人でLinuxサーバー構築してずっとパソコンつけっぱなしで扇風機でもつけて冷やしとけば良いのか?
しかしインフラの知識が少し弱いし、それだとPC一台専用で買って常に動かしとかないといけないよな?現実的じゃないわ
あとアーキテクチャがMVCの方とどの程度違うのかによるな
アーキテクチャが全然違ったらまたかなりの勉強が必要になるし

113:デフォルトの名無しさん
19/05/25 19:53:56.15 QpbNX3PX.net
あ、違うか
linuxのレンタルサーバーに実行環境をデプロイして自分で環境構築しちゃえばいいのか
レンタルサーバーって最初からApacheとかは入ってるから自分で環境構築という発想がなかったわ
いけそうな気がするな、うん

114:デフォルトの名無しさん
19/05/25 20:24:09.29 Tic4GHY3.net
>>107-108
VMwareなりVirtualBoxとか使えばいいだけだろ
メモリー8GB程度あればCentOSの最小インストールなら普通に動くし

115:デフォルトの名無しさん
19/05/25 20:36:18.47 6cjkDEDO.net
>>109
常時起動ならレンタルサーバ借りたほうがいいよ
てかVMwareにLinux入れるくらいだったらBash on Ubuntu on Windowsでええやろ

116:デフォルトの名無しさん
19/05/25 20:43:31.92 NI3fO233.net
Bash on Ubuntu on Windowsはないわ~

117:デフォルトの名無しさん
19/05/25 21:19:40.28 P9kv6fd4.net
バインドについて勉強してます
チュート試してみたのですが、うまく動かないので間違いの指摘をお願いします
URLリンク(ideone.com)
URLリンク(araramistudio.jimdo.com)
参考ページです

また、viewmodelの役割を大雑把に言うと何になるでしょうか?
仲介役ということで、上のコードでいえばclass1.csの部分かと思います。
viewとmodelだけで事足りるような気がするのですが。

118:デフォルトの名無しさん
19/05/25 21:22:05.45 UN9uDEfa.net
>>110
ケースバイケースだろ
個人開発でテストだけでレンタルサーバーまで借りなくてもいいだろうし小規模ならRaspberry Piとかでもいいし

119:デフォルトの名無しさん
19/05/25 21:26:25.93 +RRcuc5n.net
>>113
個人利用ならAzureやAWSの無料枠で十分

120:デフォルトの名無しさん
19/05/26 00:32:18.87 5z4iQyi0.net
>>112
それは実装途中の物みたいだから続きを読んでいけばいいんじゃないかな(無責任)

121:デフォルトの名無しさん
19/05/26 08:21:06.40 7w4cgfO4.net
UWPの次の将来性のあるフレームワークができるまではWEBで食ってようかな
windowsアプリなんて金にならなさそうだし

122:デフォルトの名無しさん
19/05/26 13:55:20.05 C4yZNgS0.net
食ってようかな(笑)


123:



124:デフォルトの名無しさん
19/05/26 15:10:46.67 WAmAGMjw.net
>>116
どちらにしろ、受託じゃたかが知れてる

125:デフォルトの名無しさん
19/05/26 16:10:16.91 CXWnAd1n.net
食っててくれたまえ

126:デフォルトの名無しさん
19/05/26 19:50:11.76 KIe0CODm.net
hoge{get;set;}
これの意味がわからないのですが、超絶シンプルな例ってないんでしょうか?
例えばテキストボックスコントロールのTEXTにhogeという変数をバインドして、
hogeにプログラムないでhoge="文字";などと代入する
その歳の仲介というイメージなのですが、具体的にどういう動きをするんでしょうか
プログラム内で"文字"をgetして、バインドされたhogeにsetする?なんて意味ですか?

127:デフォルトの名無しさん
19/05/26 19:50:57.04 KIe0CODm.net
要は通常はxamlからhogeの値は参照出来ない
それを許可するための宣言がgetということですかね?

128:デフォルトの名無しさん
19/05/26 19:53:46.88 gL51xVlR.net
ただのプロパティやろ

129:デフォルトの名無しさん
19/05/26 19:54:23.45 K5jCBK8C.net
>>120
全然違う
ここ読め
URLリンク(ufcpp.net)

130:デフォルトの名無しさん
19/05/26 20:00:05.12 CXWnAd1n.net
このレベルからWPFとか素人にハーフマラソン走らせるレベル

131:デフォルトの名無しさん
19/05/26 20:15:28.64 7w4cgfO4.net
>>120
君にはプログラミングは無理
肉体労働するといい

132:デフォルトの名無しさん
19/05/26 20:23:59.98 S2MuqUmA.net
ID:P9kv6fd4の馬鹿か

133:デフォルトの名無しさん
19/05/26 20:34:08.79 bvJijhhT.net
基礎からやろう?って何週間も前からいろんな人から散々言われているのにそういうアドバイスは一切無視して延々と質問続けるだけだからね
ツールは当然一生完成しないし技術は大してつかないで終わるよ

134:デフォルトの名無しさん
19/05/26 22:17:35.93 lD8uie1v.net
>>120
wpfはviewとviewmodelをdatacontextを介してやりとりするんや
例えばmainviewのdatacontextにmainviewmodelクラスを指定した場合、
mainviewmodelクラスのプロパティの値をバインディングすることでviewに表示することができる
c#でもJavaでもプロパティは外部への情報公開を目的としてるから
その意図をそのまま利用しとるだけ
大分ざっくりした説明だけれど、もし全く理解できないのなら前でも誰か言ってたけど、
windows formにするかコードビハインドに書くやり方でまずはやったほうがいい
JavaScriptにもMVVMの概念はあるからそっちから攻めるのもありかもしれない

135:デフォルトの名無しさん
19/05/26 22:20:05.47 lD8uie1v.net
ごめん、Javaのプロパティのとこは無視してくれ

136:デフォルトの名無しさん
19/05/27 07:42:24.34 35m6EZY7.net
>>120
内部変数を省略してるだけなんよ
private の内部変数がコンパイル時に勝手に作られる

137:デフォルトの名無しさん
19/05/27 11:51:22.51 JRCNDAml.net
>>120
自動実装プロパティっていつ使うのって話ならWPFはほぼ関係ない
自動実装プロパティは.netの機能でWPFは.netの一部
というだけの話
これは基礎からやれって話なのか?だけど
今からならwindows formsは勉強しなくていいと言う人もいるし
実際しなくていいだろう
ただWPFの解説書に.netについての解説なんかないよね
1からやる場合こういう.netの知識が曖昧になっても不思議はないと思う
.netは追加機能も多いし巨大すぎる

138:デフォルトの名無しさん
19/05/27 18:13:11.10 g3rj1HTz.net
> 今からならwindows formsは勉強しなくていいと言う人もいるし
> 実際しなくていいだろう
何を馬鹿なことを言ってるんだw
最近の初心者向け本では逆にwinformsしか説明してない
WPFなんて眼中にない

139:デフォルトの名無しさん
19/05/27 18:24:54.78 Y0xP1Rix.net
>>132
素人向けだからだろ?
wpfはMVVMとかxamlがくっついてくるから、winformの方が初心者向けなのは当たり前だ

140:デフォルトの名無しさん
19/05/27 19:33:58.77 re6ifzAE.net
で、ユニバーサルプラットフォームって
何と何と何があるのかな?

141:デフォルトの名無しさん
19/05/27 21:13:35.13 rm61aUh5.net
UWPとWPFの区別がつかない人がドヤ顔�


142:ナマウンティング



143:デフォルトの名無しさん
19/05/27 21:27:11.21 llXnDosY.net
最近増えてきたガラスのような表現のフレームワークはWPFですか?

144:デフォルトの名無しさん
19/05/27 21:30:57.15 LNS8v7+t.net
いいえ
あれはUWPです

145:デフォルトの名無しさん
19/05/28 19:02:40.16 ZZsS+Znm.net
xaml islandが出てきて、UWPじゃないとできないという制約が
なくなってきたね。

146:デフォルトの名無しさん
19/05/28 19:15:12.49 az36SE/9.net
そんなのあんだ。

147:デフォルトの名無しさん
19/05/28 19:38:30.31 MzojxIZT.net
逆に今後の新規開発や追加開発ではWPFもういらないってことなんだけどな
既存のWPF部分に手を入れざるを得ない場合を除き、常にWindows Runtimeで作る
それが今後のWPFアプリケーションの唯一の正しい作り方だ

148:デフォルトの名無しさん
19/05/28 20:56:00.72 5uVnslUx.net
>>140
ジョジョでいう
シルバーチャリオッツレクイエムみたいなもんか

149:デフォルトの名無しさん
19/05/29 01:24:16.83 l3SpZv82.net
>>141
さっぱりわからん

150:デフォルトの名無しさん
19/05/29 09:50:06.92 v46ep+GI.net
>>141
スタープラチナのザワールドだろ
通常はスタープラチナの精密で力強い攻撃で対応して無理なら時を止める

151:デフォルトの名無しさん
19/05/29 12:19:09.94 1hOUMMYr.net
Double型をバインディングしたTextboxに小数点を入力するとエラーになり問題、Extended Wpf toolkitのDoubleUpDownをTextboxの代わりに使ったらあっさり解決...
今までわざわざstring型でバインディングして数値だけ入力制限したりあれこれしてたのが無駄だったわ

152:デフォルトの名無しさん
19/06/01 16:43:20.75 228VL8j4.net
Windows API Code Packというのは機能を拡張するものですか?
c#で使用できるんでしょうか?

153:デフォルトの名無しさん
19/06/01 17:32:12.45 Ai3idouJ.net
できるよん

154:デフォルトの名無しさん
19/06/01 19:39:51.72 228VL8j4.net
はい

155:デフォルトの名無しさん
19/06/02 09:43:53.79 OPrZ2CcO.net
Directory.GetFileSystemEntriesで画像を取得できますか?

156:デフォルトの名無しさん
19/06/02 10:15:11.60 H0pYHCN3.net
ID:P9kv6fd4の馬鹿か

157:デフォルトの名無しさん
19/06/02 10:25:53.31 OPrZ2CcO.net
なんでそんなに攻撃的なんですか?

158:デフォルトの名無しさん
19/06/02 10:36:47.06 VOFsXmY2.net
>>150
関数の仕様をリファレンスで調べてきて引数と戻り値と動作を読んで、それでも分からないことがあったらそこを具体的に質問すると丁寧に答えてもらえるぞ

159:デフォルトの名無しさん
19/06/02 10:59:47.73 bzcjxT5l.net
wpf関係ないじゃん
何がC#でなにがwpfかもわかってないんでしょ
散々チュートリアルやろ?って忠告を無視して延々と同じような質問繰り返してりゃ答える側も馬鹿らしくなるよ

160:デフォルトの名無しさん
19/06/02 12:05:12.73 H0pYHCN3.net
>>150
しつこい馬鹿だから
いい加減死ねよ

161:デフォルトの名無しさん
19/06/02 21:42:55.58 1gGjmj25.net
画像ってのがサムネイルのことならWindows API Code Packで出来るんだが
もう少し自分で調べたほうが良いと思うよ

162:デフォルトの名無しさん
19/06/02 22:13:49.95 FzL8t6js.net
Windows API Code PackはForkがいくつもあってどれを使えばいいのか分からないな。
ライセンスも元のMSのページが消えてて良く分からんし。

163:デフォルトの名無しさん
19/06/02 23:35:24.11 1gGjmj25.net
ただ、ファイルシステムをCodePack使わずにWin32API使うと面倒になるからな
言うほど大変なわけでもないが、独特な管理方法で面食らったわ

164:デフォルトの名無しさん
19/06/03 00:00:34.97 /fVOuCWc.net
>>156
ファイルシステムってなんのこと?
フォルダー選択ダイアログとかを出すことかな

165:デフォルトの名無しさん
19/06/03 15:10:33.38 kNKAj5df.net
社内業務用にpowershell+.NETで簡易GUIを表示するようなアプリケーションを作る場合、商用ライセンスとか必要なんでしょうか?

166:デフォルトの名無しさん
19/06/03 16:58:31.60 L8VSMqPX.net
いらんでしょ

167:デフォルトの名無しさん
19/06/03 18:40:28.28 dutM1mQ+.net
どっちの意味だろう?
・(作成するアプリケーションの)商用ライセンス
・(VisualStudioの)商用ライセンス
よく主語が抜けてるとか言われてるけど
この場合、連体修飾語が抜けてるよね(今調べた)

168:デフォルトの名無しさん
19/06/03 18:46:53.35 oLmmsHsK.net
後者の意味にしか取れなかった、というか前者の意味がわからん
社内用に作ったアプリに商用ライセンスつけるか、って話?

169:デフォルトの名無しさん
19/06/03 18:50:14.74 Y6wyUKBm.net
社内配布でも基本的にはVSの開発者用ライセンス必要だし、
オープンソース使ってるならライセンス違反にならんように気をつけなあかん
自分個人だけで使うなら特にライセンス気にすることはないだろう

170:デフォルトの名無しさん
19/06/03 18:55:21.90 dutM1mQ+.net
うん
前者なら上長に聞けと思った
後者について VisualStudio Community のライセンスを調べたところ、
オープンソースプロジェクトや学習・研究目的ならどんな企業も問題ないが、
相談のケースはクローズドソースと思うので、以下の条件になるはず
・一般企業なら5ユーザーまで
・大企業(250台PCを所有、または売上100万ドル)なら、使用不可

171:デフォルトの名無しさん
19/06/03 19:23:31.03 iKNLzo07.net
VS Express2015なら無料で使用できますね
あとVS Codeを使うことも可能だが、WPFを開発って結構苦行かもしれんね

172:デフォルトの名無しさん
19/06/03 19:31:36.01 gHWgGxDB.net
メモ帳とかでソース書いてWindowsにプリインストールのcsc.exeでコンパイルした場合はVSのライセンスっていらないのかな?
スレチだけど

173:デフォルトの名無しさん
19/06/03 19:43:46.22 kNKAj5df.net
質問の仕方が悪かったですね
すみません
テキストエディタでpowershellのコードを書き、その中で.NETのFormオブジェクト達を呼び出してGUIを作ります
そのときに、powershellや.NETの商用ライセンス的なものが必要なのか知りたかったです
よろしくお願いします

174:デフォルトの名無しさん
19/06/03 19:52:03.41 dutM1mQ+.net
まさかの第三
・(実行環境の)商用ライセンス
だった

175:デフォルトの名無しさん
19/06/03 21:22:12.30 51hU7+bN.net
しかもWPFですらない可能性も出てきた

176:デフォルトの名無しさん
19/06/03 22:12:25.81 D/nGT1NT.net
OSSなんだしいらないんじゃね?(適当)
社内用ならそんなシビアに調査しなくていいんじゃね?って気もするけど超大手とかだとやっぱしっかりしらべるのかね?
超大手なら周りなり法務なりに聞けで済むか

177:デフォルトの名無しさん
19/06/03 22:30:23.86 /fVOuCWc.net
>>163
小規模企業でも大企業からの委託案件だとNG

178:デフォルトの名無しさん
19/06/04 07:11:16.82 vCNf4oK2.net
>>170
「自社利用」な

179:デフォルトの名無しさん
19/06/04 11:36:40.38 K/ci/E6x.net
URLリンク(cointoss.hatenablog.com)
上を参考にexeにdllをマージしたのですが
Prism.dll、Prism.Unity.Wpf.dll、Prism.Wpf.dllは
exeのフォルダに置いていないと起動できません。
他のdllは削除しても起動できます。
なにか不足していることがあるのでしょうか?

180:デフォルトの名無しさん
19/06/06 03:11:15.75 Q2PRQ2hH.net
>>166
不要

181:デフォルトの名無しさん
19/06/12 06:39:45.37 6mE/3wpu.net
WPF技術者探しても一人も見つからないあるよ。保守できないあるよ。

182:デフォルトの名無しさん
19/06/12 08:15:06.43 1sqooHn/.net
お前がメンテナになるんだよ

183:デフォルトの名無しさん
19/06/12 08:57:44.10 gBdzPl5F.net
金出しゃいくらでも居るよ
技術者を安いおちんぎんでこき使わないで

184:デフォルトの名無しさん
19/06/12 17:09:04.38 lPa5yFg1.net
技術者不足なのか足りてるのか分からん業界だ

185:デフォルトの名無しさん
19/06/13 20:13:48.97 Qp/i0hmX.net
core3いいじゃん
これで少し手直ししたらlinuxにwpfもっていけるってことなのかい

186:デフォルトの名無しさん
19/06/13 20:59:16.46 vbUZdfMk.net
残念ながらWPFやWinFormsは.NET CoreでありながらWin限定
WPFは大部分がC++/CLIで書かれているしWindows APIに依存しまくってるから、
まずはそれを全てポータブルな形に再実装しなければならない
百人月クラスの壮大なプロジェクトだ

187:デフォルトの名無しさん
19/06/13 21:15:12.81 sfQNEli4.net
100人月で済むならやりゃいいじゃん
壮大なプロジェクトって少なくとも1桁違うやろ

188:
19/06/13 21:31:32.83 RglcOoNZ.net
>>180
一桁はおろか、二桁=1万人月くらいは必要じゃないかな…

189:デフォルトの名無しさん
19/06/13 21:32:10.18 09qLCJE0.net
MS社員の100人月ならドカタのサグラダファミリアだな

190:デフォルトの名無しさん
19/06/13 21:41:06.34 Br82W2pC.net
そもそもポータブルなGUIに無理がある
swingの様になりたいのか

191:デフォルトの名無しさん
19/06/13 22:01:08.10 k5DFsQwe.net
C++/CLIって久しぶりに聞きましたね
もう聞くことはないと思ってた

192:デフォルトの名無しさん
19/06/13 23:20:07.43 sfQNEli4.net
そもそもWPFなんだからWindows限定でよくね?

193:デフォルトの名無しさん
19/06/13 23:25:38.96 CND6SLBs.net
WPFはフルスクラッチでUIを描画してるから、アーキテクチャ的にはむしろWin限定にするほうが不自然

194:デフォルトの名無しさん
19/06/14 21:47:31.30 nRSl3ZvU.net
>>179
そうなん…
Win専用ならCoreにしても…
C++/CLIはたまに使う

195:デフォルトの名無しさん
19/06/15 09:19:09.60 Ga3aXpPN.net
Chromium+AspNetCore+Blazor
次世代の.NET系デスクトップフレームワークはこうなる

196:デフォルトの名無しさん
19/06/15 09:27:21.19 6PSH/Imj.net
過剰なクライアントサイド志向に対する最近の揺り戻しのムードの中で、サーバーサイドBlazorだけならワンチャンあったかもね
Blazorを正式なプロダクトとして推していくと決めた時点で、クライアントBlazorは廃止してサーバーサイド一本にするべきだった
Blazorといえばwasmのオモチャというイメージを払拭できない限り普及はない

197:デフォルトの名無しさん
19/06/15 09:42:50.74 Ga3aXpPN.net
SSRはもとはクライアントでしか動かないjsが鯖で動くすごいって技術
だからjs以外の言語だとSSRはなにも真新しさはない古典的な技術だ
なのでBlazorでサーバーサイドをやる意味はない(api、MVC、Pagesで十分)
クライアントで.NETを動かすことに意味がある

198:デフォルトの名無しさん
19/06/15 09:49:12.97 p9QrGiGS.net
Blectron的なやつのことを言いたい?

199:デフォルトの名無しさん
19/06/15 10:13:25.41 Ga3aXpPN.net
>>191
Blectronは知らないがElectronの.NET版という意味ならまさにそうだな
ググったらもうすでに同じ発想で取り組んでるOSSユーザーが少なからず居たから
もう暫くしたらBlazorでクロスプラットフォームデスクトップアプリが実用


200:化するんじゃないかな



201:デフォルトの名無しさん
19/06/15 10:33:45.61 p9QrGiGS.net
>>192
Blectlonでググったかい?

202:デフォルトの名無しさん
19/06/15 15:17:17.19 xT5QU/B2.net
新卒で入った会社(5年前)がWinFormだったな。今も多分そう。
今はWindows用のコード書くことがなくなってしまったが、
あれはあれで生産性高いと思うわ。業務アプリだとデザイン性いらないし

203:デフォルトの名無しさん
19/06/15 15:30:24.49 RNWBuCRz.net
WPFも主ターゲットは業務向けだけど、日本のITドカタが業務システムと聞いてイメージするオーダーメイドなシステムとはだいぶ違う
米国では早くからシステムのパッケージ化が進んでいて、
パッケージベン�


204:_ーにとっては一つ作れば多くの客に売れるから多くの開発リソースを投資してリッチなUIを作ることができる そういう事情を踏まえて誕生したのがWPFなんだよ 日本でも近年は脱オーダーメイドが進みつつあるけど、既にリッチクライアントの時代が終わってSaaSになっちゃったからWPFの出番は来なかった



205:デフォルトの名無しさん
19/06/15 16:35:30.94 hWID9DJj.net
日本の業務アプリには御託並べるWPFプログラマは不要。
黙々と作業に徹するWinformコーダーが居ればよい。

206:デフォルトの名無しさん
19/06/15 17:08:33.15 RjknjEo7.net
業務にアクティブ要素、動的要素なんていらないからな。
コントロール全部並べてあって使えないところは無効化されてるだけでいい。
状況によって位置が変わるのをすげー嫌がる。操作ミスが増えるだけ。

207:デフォルトの名無しさん
19/06/16 01:46:25.54 AXRRwyW/.net
バインドしてみたけど、まったくメリットが分からん...
URLリンク(marikooota.hatenablog.com)
とか、↓の方が簡単だと思う。
-- xsml --
<StackPanel>
<TextBox x:Name="tb1"/>
<Button Click="btn_Click">Count Up!</Button>
</StackPanel>
-- cs --
int count = 0;
private void btn_Click(object sender, RoutedEventArgs e)
{
count++;
tb1.Text = count.ToString();
}
誰か、バインドのメリットをアホな俺に教えて下さい...

208:デフォルトの名無しさん
19/06/16 01:47:53.07 AXRRwyW/.net
>>198
空白文字消されるんですね; 読みにくくてすみません💦

209:デフォルトの名無しさん
19/06/16 03:49:25.26 3DdY3936.net
バインドの最大なデメリットは天才と無職しか使いこなせないこと。

210:デフォルトの名無しさん
19/06/16 09:03:33.98 muf2QdNo.net
>>198
あなたの作りたいツールがボタン押したら
カウントアップするだけの機能だけでよいなら理解する必要はない
でもたいていはそのテキストボックスには外部ファイルを読み取ったり、
データベースからデータをとってきて、集計したり加工した値が入るはずだ
その時にはbtn_clickのコードは肥大化して容易に1,000行を超える
その時には関数に切り分けたりすることを覚えるだろう
さらに進んでいくと、画面を凝ったデザインにしたくなったりユーザーの入力値を検証したくなったりする
そうすると画面のデザインを少し変えただけなのに
うまく動かなくなったりコンパイルエラーを起こすようになってきた
そこで画面は画面だけにしたほうが改修がしやすかったり、
デザインの得意な人にそれを任せることができるようになってくる
システムは機能や役割ごとに適切に分離していたほうが将来的にメリットがあり、
バインディングはそれを実現する仕組みの一つだ

211:デフォルトの名無しさん
19/06/16 10:07:34.99 X9An2SCt.net
三行で

212:デフォルトの名無しさん
19/06/16 10:11:25.65 X9An2SCt.net
バインディングは逆に手順が可視化されないのが弱点
よくわからないけど動いていればいいならバインディング
そこまでしっかり自分で制御したいなら通常のコードで

213:デフォルトの名無しさん
19/06/16 10:14:27.54 yX0oMZwq.net
手順の管理は量が増えると難しくなってスケールしないから
そもそも手順気にしなくていいように宣言的プログラミングしようぜってなったんだよ
ちっぽけなアプリ作るだけなら好きにすればいいさ

214:デフォルトの名無しさん
19/06/16 10:14:39.65 9Kn5GUQ/.net
ドヤ顔したいならバインディング

215:デフォルトの名無しさん
19/06/16 10:22:58.12 X9An2SCt.net
バインディングにも弱点がある
相互関係で値が決まるときにその相互関係を結局人間が追わな�


216:ュてはならない場合が出てくる その時に非常にバグが取りにくい それでFBはMVVMを捨てた



217:デフォルトの名無しさん
19/06/16 10:24:41.66 X9An2SCt.net
スケールと言うけど小規模ならバインディングで対応可能だろうけど
それを超えるとまあ無理だろう

218:デフォルトの名無しさん
19/06/16 10:30:24.72 yX0oMZwq.net
手続き的だと非同期処理も非常に弱い
今の時代非同期が無いということはまずない
非同期処理ではやはり宣言的プログラミングが強い
手順すなわち処理の順番に依存すると非同期処理は急激に難しくなる

219:デフォルトの名無しさん
19/06/16 10:33:01.62 X9An2SCt.net
従来型はスケールしないと言うけど世間の大規模プロジェクトはほぼ100%
従来型(手続き型)で作られているだろう
手続きが書いてあればツールと人手を使えば解消のめどはつく
宣言的な組み合わせの場合はロジックをすべて脳に入れて考えなくてはならないので
大きくなればなるほど人間が追いつかないと思う
逆にバインディングで大規模プロジェクトが今現在も使われているとは思えない

220:デフォルトの名無しさん
19/06/16 10:34:56.59 X9An2SCt.net
人間が追い切れない場合は実行してデバッグしかないけど
それがまたバインディングの場合はやりにくい

221:デフォルトの名無しさん
19/06/16 10:36:05.79 yX0oMZwq.net
>>209
スケールしないのを金と人数に物を言わせて無理やり作った
それが従来型の大規模開発だな
スケールはしてないんだよ無理してるだけで
脳に入れなきゃいけないことが多いのは手続き的なほう
なぜなら手続==処理の順番に結果が依存するから
長い処理を扱うときに最初から最後まで手順を頭に入れてなければいけない

222:デフォルトの名無しさん
19/06/16 11:36:30.06 0yrhG5qH.net
画面単位で独立したロジックを記述してDBのみ共有する従来のスタイルなら余裕でスケールするよ
WPFは頭のいいアーキテクトがトップダウンでスマートな設計をするスタイルには適している
MSのプロダクトは基本そうやって作られている
一方、従来のバカでもスケールするスタイルで作ろうとするとWPFはフリーダムすぎて無茶苦茶になる

223:デフォルトの名無しさん
19/06/16 12:48:19.67 BOJP8Jll.net
そういうけどできてから10年以上立つけど
そんなに大規模のプロジェクトでWPFが使われてるような形跡がない
webでもMVVMは中規模から小規模向けで大きくなると使い物にならないという評価

224:デフォルトの名無しさん
19/06/16 12:56:44.07 35twkBI3.net
>>213
っVisual Studio

225:デフォルトの名無しさん
19/06/16 12:59:52.96 6qqET37p.net
大規模で使い物にならなくなるのは、学習できない月収14万円のコーダーばっか集めてるからやろ

226:デフォルトの名無しさん
19/06/16 13:00:12.87 Fx7TO0Mh.net
大規模な画面アプリなんてあんの?
普通サブシステム単位とかで実装別れると思うけど

227:デフォルトの名無しさん
19/06/16 13:32:34.96 yX0oMZwq.net
>>212
それは別の意味でスケールしない
DB処理にビジネスロジックが蔓延してメンテナンスコストが跳ね上がる
実行時パフォーマンスも悪い

228:デフォルトの名無しさん
19/06/16 14:00:08.42 uPzprWkd.net
>>216
サブシステムで数百画面とかのシステムもありますので…

229:デフォルトの名無しさん
19/06/16 14:11:05.99 UANb65jp.net
DBとはバインドするのは良くて、画面とのバインドは良くないという論調?
大規模な画面改修を想定しない限り、画面要素のバインドは良い事無いと思う。
作り変えるのが前提のプロトタイプならメリット有るだろうね。
レジに支払い方法追加するみたいに、旧来のロジックはそのままでレイアウトが変わるならバインディングも有効だろうね。

230:デフォルトの名無しさん
19/06/16 16:05:42.44 X8m3/+hI.net
>>219
one-way binding(射影)なら良いと思う。
個人的には当初MVVMの利点と言われていた「View(UI)のすげ替えが楽」なんてのは幻想で、
「自動テストが書きやすい(手動によるE2Eテストを減


231:らせる)」というほうに重きをおくべきだと。



232:デフォルトの名無しさん
19/06/16 16:06:40.32 6qqET37p.net
>>220
確かにテストはめっちゃ楽だわ

233:デフォルトの名無しさん
19/06/16 17:08:33.07 X8m3/+hI.net
そう、だから自動テストという意味で >>198 を考えると、
btn_Click()イベント内部では"tb1"という他人のControlオブジェクトへ直接アクセスしている。
したがって"tbl1"Controlの存在無しに実行することができないから自動テストを書くのが困難になる。
これを、
・画面に表示されている値と常に一致しているカウント変数、という概念(=データバイディング)
・実際にカウントアップする処理(=ビジネスロジック)
・カウントアップするきっかけ(=イベント or コマンド)
に分けて考えることでビジネスロジックの自動テストを書くのが容易になる、というのがMVVMのメリット。

234:デフォルトの名無しさん
19/06/16 18:25:01.50 3DdY3936.net
>>212
WPF登場以降、MSのアプリ、ツールに一貫性がなく碌に使われずに開発が放棄され、
サポートしきれずオープンソース化される理由はそこにあるのですね。

235:デフォルトの名無しさん
19/06/16 19:37:59.62 G7NVDdhd.net
>>223
OSS化=サポートしきれない
じゃねーだろ…どんな思考してんだよ

236:デフォルトの名無しさん
19/06/16 20:16:09.10 wZzXbGgB.net
煽りたいだけだろ、スルーしとけ

237:デフォルトの名無しさん
19/06/16 20:45:27.52 3DdY3936.net
>>224
オープンソース化の経緯も知らずに何頓珍漢なこと言ってんだよ。
プレミアサポートが碌に質問に答えれなくなってる現実まで知らないとか、
MSと契約してないか、開発してないかのどちらか。

238:デフォルトの名無しさん
19/06/16 20:46:53.30 /vSSiNTa.net
つまりwinformsもサポート出来なくなったと

239:デフォルトの名無しさん
19/06/16 21:20:01.01 G7NVDdhd.net
>>225
ごめんキチガイに触ってしまった

240:デフォルトの名無しさん
19/06/16 21:24:45.01 C3V1csoe.net
>>226
Microsoftの中の人キタ━━(゚∀゚)━━!!

241:デフォルトの名無しさん
19/06/16 21:30:04.16 GzHLSBJo.net
内容はともかく >>224の言い方も若干煽り入ってるし、ムキになる方もガキ

242:デフォルトの名無しさん
19/06/16 21:32:29.36 WJsnIQ8z.net
ガキ同士仲良くしてどうぞ

243:デフォルトの名無しさん
19/06/17 01:08:20.00 kwIqiH/S.net
こんなオワコン老害スレにガキなどおらん。
いるのは無職とヨコからマウンティングするだけの糞じじぃのみ。

244:デフォルトの名無しさん
19/06/17 06:40:10.09 dkYFNC1r.net
>>232
おまえはどっち?

245:デフォルトの名無しさん
19/06/17 12:15:35.07 IT0P3J54.net
WPFの使い勝手はともかく、使い手数に対して仕事はそれなりにあるんだからオワコンではないっしょ

246:デフォルトの名無しさん
19/06/17 19:39:32.64 fDhMMT3f.net
COBOL的論理

247:デフォルトの名無しさん
19/06/17 21:35:53.79 Z9iR9gFd.net
60年現役のCOBOLさんを いつ消えるか分からんWPFなんぞと一緒にしないでくれたまえ笑

248:デフォルトの名無しさん
19/06/18 06:15:24.31 3nOE2mBA.net
プログラム板にキチガイ降臨中!botに一晩も反応する異常さ
一般人(学校恩師)に殺害予告をしているのでスレ建て通報してください。
スレリンク(tech板)
142 名前:a4 ◆700L1Efzuv 投稿日:2019/06/18(火) 05:29:55 ID://qVkzO
>>141
名古屋の人な 俺ね、君の問題を大橋先生と混ぜないことにする。つまりね、
片桐孝洋のことをボコろうと思う。普通に顎の骨を折る。これくらいで警察来るか?
一般市民とかさ、普通にさ、俺らの秘密なんだけどさ、日本人な


249:んて復活ねーから。



250:デフォルトの名無しさん
19/06/18 20:27:06.42 ei8mZ0vT.net
設計が糞すぎたから普及に失敗した。これがすべて。

251:デフォルトの名無しさん
19/06/18 20:44:01.17 PMWmWCmS.net
COBOLをボコる

252:デフォルトの名無しさん
19/06/18 22:46:24.39 1c5MtUw2.net
XAMLのデザイン要素は悪くないと思うけど
MVVMとかに関しては労力に見合ったリターンがあるか疑問
個人的にはバインドとかいろんな書き方できるのがすごくイヤ。
バインドでもx:Name=でも良いんだが、Pjによって原則どっちかでしか書けなくしてほしい。

253:デフォルトの名無しさん
19/06/19 18:45:04.98 eIRWm2fN.net
>>240
それは規約の話じゃないか?

254:デフォルトの名無しさん
19/06/19 20:02:02.54 Td37eomm.net
両方じゃない?
昔の言語でgotoでスパゲッティの成果物があったとして、書いたヤツや規約も悪いしgotoオッケーの言語も悪い。

255:デフォルトの名無しさん
19/06/20 19:00:34.81 OKnd5gHF.net
WPFで業務用アプリを作ってみたけどなかなかいいじゃない。
Material Design XAML Tool Kitのおかげでサクッと今風のUIが実現できて褒められたわ。
データバインディングしなかったからだと思うけどわりかし簡単に作れるし便利。

256:デフォルトの名無しさん
19/06/20 22:52:20.47 HND361/m.net
バインドは自分で全部やるにはまだ良いのだけど、他人のバグを解析する時のめんどくささが半端ない。

257:デフォルトの名無しさん
19/06/21 21:27:48.13 n+3asy/J.net
そこでx:Bindですよ

258:デフォルトの名無しさん
19/06/22 00:12:48.90 fySNt3rb.net
COBOLにボコられるレベルか。否定はできない。

259:デフォルトの名無しさん
19/06/22 00:40:47.93 2eisPF//.net
exe作れるなら別にUWPでもいいんだけどな

260:デフォルトの名無しさん
19/06/22 01:00:34.07 65ybortV.net
イベントがバブルがどうとかちゃんと理解できてないまま廃れ始めてしまった

261:デフォルトの名無しさん
19/06/22 11:40:15.33 rEuWV0gj.net
言語がはやるかに、入りやすさは大事だからな。
バインドでキレーに実装したのに、メンテした奴が手続き型でやってるとスゲーがっかり。
人材確保がむずいなら、最初から手続き型でやった方がいーわ

262:デフォルトの名無しさん
19/06/22 11:53:14.62 rEuWV0gj.net
バインドのメリットとして分業しやすさが挙げられるけど、xaml と vmを別の作業者がやることなんてあんまり無いと思う。ほとんどのケースではコード量が増えてメンドイだけw

263:デフォルトの名無しさん
19/06/22 12:11:23.53 8ehMgppn.net
MVVMはクラスの数が増えるけど画面更新が楽なのがいい
ReactivePropertyと組み合わせるのが好き

264:デフォルトの名無しさん
19/06/22 12:40:42.40 5GxlA/I5.net
>>250
テストのしやすさやろ

265:デフォルトの名無しさん
19/06/22 12:52:59.27 Y4Y2JNgB.net
MVCのほうがテスト簡単でいいや

266:デフォルトの名無しさん
19/06/22 12:54:31.72 gdHFdK5j.net
テストせんやつにテストの楽さを説いても仕方ないやろ

267:デフォルトの名無しさん
19/06/22 12:58:17.43 Y4Y2JNgB.net
VMのテストをしてもE2Eテストをしなくていいわけじゃない
振る舞いが複雑化する傾向が強いMVVMはテストにおいてもデメリットが大きい
単純なMVCならE2Eテストも楽ちん

268:デフォルトの名無しさん
19/06/22 13:00:36.93 5GxlA/I5.net
>振る舞いが複雑化する傾向が強い
ソースよろ

269:デフォルトの名無しさん
19/06/22 13:03:08.40 Y4Y2JNgB.net
>>256
手元のWPFアプリソースでもみればいんじゃね?

270:デフォルトの名無しさん
19/06/22 13:10:11.63 gdHFdK5j.net
ジャ…どこかのSIerらはE2Eテストを人力でやるのが最良だとみなしてる節があるがな

271:デフォルトの名無しさん
19/06/22 13:16:43.11 Y4mhjvqt.net
>>258
それは正しいよ
一度きりのテストなら自動化はコストに見合わない
SIerなら納品後はどうせあまり弄らないし、仮にメンテが必要になったとしてもは都度工数を請求できるから無問題

272:デフォルトの名無しさん
19/06/22 13:23:15.77 opiN2/uR.net
なんと言っても数字でレイアウト出来るのが良い
マウスでポトペタは楽だけど美しくするには可也面倒だからね

273:デフォルトの名無しさん
19/06/22 13:24:06.96 1mmW7z7g.net
単純なMVCアプリしか作ったことない人:「MVVMは複雑だからテストが大変」
こういうこと?

274:デフォルトの名無しさん
19/06/22 13:28:47.48 5GxlA/I5.net
>>261
たぶんそういうこと
ただの妄想やで

275:デフォルトの名無しさん
19/06/22 14:23:52.15 Y4mhjvqt.net
>>262
事実やで
というか論理が逆で、そもそも複雑だからMVVMを使うんだよ
だから典型的なWebMVCに比べてテストが大変なのは当たり前

276:デフォルトの名無しさん
19/06/22 14:42:56.00 rEuWV0gj.net
MVVMのテストは楽だと思う。
コーディング・テスト・バグ修正の合計時間で考えると得してるかは疑問だけど。

277:デフォルトの名無しさん
19/06/22 15:50:17.05 5GxlA/I5.net
>>263
事実ならソースよろ

278:デフォルトの名無しさん
19/06/22 15:56:59.09 1mmW7z7g.net
>というか論理が逆で、そもそも複雑だからMVVMを使うんだよ
なら原因はMVVMであることではなくてその前に複雑であることになるが、
自分が何を言っているか理解しているんだろうか。

279:デフォルトの名無しさん
19/06/22 15:59:36.88 x9ZPs6AR.net
>>256
>>265
バカじゃねぇの

280:デフォルトの名無しさん
19/06/22 16:00:33.66 Y4mhjvqt.net
>>266
だからそう言ってる
UIの要件が複雑だからWPFを採用し、WPFが複雑だからMVVMを採用する

281:デフォルトの名無しさん
19/06/22 16:07:07.54 5GxlA/I5.net
>>267
妄想なら誰にでもできるもんね

282:デフォルトの名無しさん
19/06/22 16:37:06.55 rEuWV0gj.net
少なくともUIに関しては複雑だからより、見た目的な理由でWPFだと個人的には思ってるw

283:デフォルトの名無しさん
19/06/22 16:39:59.61 ykSXq++N.net
>>267 >>269
中身なしで罵倒し合うのって、ガキの喧嘩過ぎて見苦しい

284:デフォルトの名無しさん
19/06/22 16:41:04.54 5GxlA/I5.net
>>271
罵倒はしてないよ
ソース見てみたいなーって話

285:デフォルトの名無しさん
19/06/22 17:00:01.32 x9ZPs6AR.net
>>272
バカじゃねぇの

286:デフォルトの名無しさん
19/06/22 17:13:14.38 5GxlA/I5.net
>>271
罵倒って>>273みたいなやつのことっしょ

287:デフォルトの名無しさん
19/06/22 17:37:26.58 czMayCJt.net
wpfよりこのスレの方が複雑で草

288:デフォルトの名無しさん
19/06/22 23:36:27.74 33sn5taJ.net
うまいオチだ

289:デフォルトの名無しさん
19/06/23 00:17:08.67 x4qCzVIO.net
上でテストの話が出てるけど
エンジニアたち「できたっぽい!」
上司「テストして」
エンジニアたち「一通り動いてます!」
上司「エージングもたのむ」
エンジニアたち「丸一日動かしっぱなしでもOKでした!」
上司「了解」
という雑な開発しかしたことない自分にはついていけない…

290:デフォルトの名無しさん
19/06/23 00:50:10.75 +hNeL9sR.net
むしろ簡単なPJの方が世の中多いし、自動テスト作らなかったら困ったであろうことは5年やってて一度しかないw

291:デフォルトの名無しさん
19/06/23 06:37:29.75 0ZLQVu14.net
俺は自動テストは一部のモジュールの単体テストでしか使わんなぁ
プロジェクト単位で導入するんじゃなくて、個人で導入するものかと

292:デフォルトの名無しさん
19/06/23 07:42:47.22 P8H0jYp7.net
自動テスト無いと困るよ
エクセルスクショは精神を病んでしまう
病んだら困る

293:デフォルトの名無しさん
19/06/23 09:04:47.66 ATNbze7o.net
SIerは縦横に広がるテスト書に満足する顧客が多いからな~
金持ってる大手ほどその傾向が強い(笑

294:デフォルトの名無しさん
19/06/23 10:23:02.87 Mn96V+f7.net
大概自動テストのシナリオ書いてる手間で打鍵した方が早かったな
シナリオが使い回せるならまた違うだろうけど

295:デフォルトの名無しさん
19/06/23 10:29:23.44 x+1RTwK/.net
大手だとテストシナリオ書いてる人と実際にコード書いてる人は別
SEが馬鹿みたいに多くいて何か月もずっとテスト仕様書を書いてる

296:デフォルトの名無しさん
19/06/23 10:54:16.26 P8H0jYp7.net
エクセルよりコードのほうがシナリオ書きやすい
コードでシナリオ書いたら実行工数は0
1回しかテストしない場合でもコードで書いたほうがいい

297:デフォルトの名無しさん
19/06/23 12:21:50.63 7s8J8D/4.net
>>283
タウンワークで時給1600円のテスト要員募集してたな。
「コードは書きません、短期長期どちらも可。」みたいな

298:デフォルトの名無しさん
19/06/24 01:03:52.09 Y9x0dRru.net
Prism 7.1 のチュートリアルサイトないっすかね
妖精作戦さんのところは読み物としてはとても良いけどソースはGitHubな!なスタンスなので使いにくい…
公式のチュートリアルは WPF (Legacy) で 6 版のままだし
モヤモヤしながら勉強中

299:デフォルトの名無しさん
19/06/28 17:52:56.52 lioMzEvp.net
NVVMでは~.xaml.csには何も書かないのが理想とのことですが、例えば他のwindowを開くような処理はビューモデルに記述するのでしょうか?
根本的な疑問は、~.xaml.csに何も書かないということはモデルでできることが何もなくなり、その代わりモデルに記述するのでべきことを全てビューモデルに記述することになってしまっておかしいのでは?ということです。
私が何か勘違いしてるのは間違いなさそうなのですがそれがわかりません。。

300:デフォルトの名無しさん
19/06/28 18:18:14.10 iRyUn2/n.net
.xaml.cs
に書くのはMODELではなくVIEWMODELでは?

301:デフォルトの名無しさん
19/06/28 18:38:47.09 8le9HcFr.net
>>288
Viewでしょ

302:デフォルトの名無しさん
19/06/28 18:43:28.81 IeC+ybxD.net
>>287
あくまで自分の場合だけれど、
画面を開くとかメッセージ出すとかはそれ専用のサービスクラスを作ってる
そしてviewmodelからそのサービスを呼び出すようにしている
viewはicommandを介してviewmodelに通知するだけで、
その後どのサービスを呼び出すかはviewmodel、
実際の処理はサービスクラスに書かれている
コードビハインドに書いた方が圧倒的にシンプルになる場合はコードビハインドに書く

303:デフォルトの名無しさん
19/06/28 20:11:16.63 1dGBh4nf.net
VSMでストーリーボード動かすよりイベントハンドラから動かしたほうが圧倒的に楽なんだよな
その場合はコードビハインドに書くしか無いが

304:デフォルトの名無しさん
19/06/28 20:17:39.65 anlRZAoa.net
今時アニメーション?
世界で唯一の成功したWPFアプリケーションであるVSはもうアニメーションなんて全く無くなってるのに

305:デフォルトの名無しさん
19/06/28 21:25:24.69 lanM6mt5.net
なるほどありがとうございます。
~.xaml.cs=モデルだと思い込んでました。
~.xamlと~.xaml.csはコンパイルされて一つのクラスになるってのは知ってたんですが、つまり2つ合わせてビューなんですね。
おかげでWPFのMVVMの説明がわかるようになってきました。

306:デフォルトの名無しさん
19/06/28 22:51:50.22 nhUPpRvn.net
XAMLだけでは足りない機能は、別途、ビヘイビア、トリガー、アクションを作成して対処します。
URLリンク(www.atmarkit.co.jp)

307:デフォルトの名無しさん
19/06/29 00:07:12.29 CfES0TXk.net
WPFって、直感的にはすごく簡単そうなのにいざ実現しようと思うとやたら難しいってことが多くない?
テキストの内容が変わったらその時にテキストを2回点滅させるっていうシンプルなことをしようとしたら大変だったんでそう思ったってだけだが。

308:デフォルトの名無しさん
19/06/29 00:11:54.69 EUtq6Ar


309:6.net



310:デフォルトの名無しさん
19/07/01 20:08:29.98 yYlRZT4H.net
>>287
ビューにはビューの処理だったら書いてもいい
無理してコードビハインドを避けても自己満足できるくらいしかメリットはない

311:デフォルトの名無しさん
19/07/01 20:38:17.63 lLZwoOoz.net
Listboxにバインドされたコレクションがあってlistboxitemを
右クリックしてコンテキストメニュー出して元のコレクションからitemを
削除するのってどういうのが一番シンプルなんだろうか

312:デフォルトの名無しさん
19/07/01 21:13:17.23 mdlnYL3K.net
>>298
URLリンク(ideone.com)
右クリックしたListBoxItemの内容をCommandのparameterに渡してみた
一番シンプルなのかどうかは知らん

313:デフォルトの名無しさん
19/07/02 00:01:51.84 4m9hOiGn.net
>>297
クラスを継承して機能を拡張するのはよくないと思う
理由いち 代替策があればそれを使ってクラスの肥大化を回避する
理由に 機能をビヘイビアにすれば再利用が簡単

314:デフォルトの名無しさん
19/07/02 09:06:12.90 gPm+QAeN.net
継承じゃなくてイベントハンドラじゃね?主に
ビヘイビア化は後で別のところに使いたくなってからでも遅くない

315:デフォルトの名無しさん
19/07/03 01:42:37.28 wg/xgQnm.net
>>300
再利用するための仕組みは再利用される可能性ができてから考えればいい
再利用しないのに手間をかけるのはムダ
ちなみにここで言ってるのはメインウィンドウとかオプションダイアログの話な
メッセージボックスみたいな再利用性の高いものはWPFの機能を駆使してもいい
玄人はコードビハインドを書かないみたいな風潮があるけど、それを信じ込んでコードビハインドを避けて泥沼にはまり込むのは素人

316:デフォルトの名無しさん
19/07/03 02:06:51.20 oG2WkIil.net
Prism7ってどうやって覚えればいいの?

317:デフォルトの名無しさん
19/07/04 09:51:39.53 PdwtXR4j.net
UserForm内のDatagridが展開されるときにチラチラするんだけど、何とかならないかな...最小サイズから最大サイズに拡大するような描画がある。MainWindow直ならない現象

318:デフォルトの名無しさん
19/07/04 10:28:20.53 k+s0abOB.net
UserFormとは 展開とは

319:デフォルトの名無しさん
19/07/04 10:56:54.65 PdwtXR4j.net
自分で作ったユーザーフォーム内のDataGridのItemsSourceにバインドしたコレクションに要素を追加するとチラつきます

320:デフォルトの名無しさん
19/07/04 13:06:21.63 iqQZWFIm.net
DataGridはゴミだから、WindowsFormsHostでDataGridView使ったほうがいいよ

321:デフォルトの名無しさん
19/07/04 23:02:50.87 myh2pWbx.net
スケール感とか分からんけどこの辺は?
URLリンク(stackoverflow.com)

322:デフォルトの名無しさん
19/07/04 23:09:08.06 LkrEOqlD.net
>>307
どこら辺がゴミ?

323:デフォルトの名無しさん
19/07/04 23:11:07.32 OMb74HbU.net
MSから新しいGUIライブラリが出たらまずDataGridを調べて絶望するまでが儀式だぞ

324:デフォルトの名無しさん
19/07/05 00:36:29.15 CQGNs6dF.net
DataGridの問題の殆どは、万単位のデータを突っ込むPG、SE,
クライアントの何れかだとは思うんだがね
実際に使う人は万もスクロースしちゃいないのに

325:デフォルトの名無しさん
19/07/05 00:43:44.52 auH9BNOV.net
それは一見意識高いようでいて矛盾した意見だと思うね
十分に練られた優れたUIにはデータグリッドの出番はない
データグリッドはそもそもUIの作り込みに工数をかけたくないときに使うもんだ
そもそも手抜きの道具なのだから、データグリッドの使い方として、面倒だからもう全部突っ込めというのも自然な発想だろう

326:デフォルトの名無しさん
19/07/05 14:41:18.94 H4UuFejG


327:.net



328:デフォルトの名無しさん
19/07/05 18:35:21.37 Zc5sU972.net
wpfをマスターしきればMVVM原理主義でいっても苦労せず実装できるので原理主義でいいと思うんだよ。
ただwpfは難しい。並大抵のエンジニアでは原理主義で押し通そうとすると実現できない機能がでてきて挫折する。
と思った。

329:デフォルトの名無しさん
19/07/05 18:51:13.41 cjl7UwcZ.net
WPFに携わってだいぶ経ったが、Adorner関連は苦手。
なんでペタっとUserControl貼れないのか

330:デフォルトの名無しさん
19/07/05 21:24:53.68 7a3tVJ3L.net
URLリンク(blog.okazuki.jp)
UWPンゴwwwwwwwwwwwwwwwwwwww

331:デフォルトの名無しさん
19/07/06 08:26:36.67 WmAexti4.net
すっかり忘れ去られてLivetだが、ビヘイビアが物凄く充実しているから
そこだけ引っ張って使うのもありだとは思う

332:デフォルトの名無しさん
19/07/06 15:34:02.12 G3GVBuNF.net
更新が続いてればprismとためはるレベルでスタンダードだったんだけどな…
惜しいライブラリをなくしたもんだ

333:デフォルトの名無しさん
19/07/06 15:41:44.00 lCkeD84I.net
MVVMが複雑だし洗練もされてないのが悪い

334:デフォルトの名無しさん
19/07/06 15:56:25.42 6I0IcNLp.net
MVVMやろうと思ったらフリーのライブラリを利用しないといけないと判って取り組むの止めた
MSから標準で出して欲しかったな

335:デフォルトの名無しさん
19/07/06 16:27:06.95 u4I8JAFv.net
Livetは形骸化した原理主義に陥ってコードビハインドを書かないことが目的化していた印象
コードビハインドの代わりにXAMLでプログラミングをし始めて、結局ビューとロジックの分離とは何だったのか状態になっちゃった
MVVMの根本的思想はWebにも受け継がれている優れたものだけど、ビヘイビアは明らかに失敗

336:デフォルトの名無しさん
19/07/06 17:20:20.06 AYJdcRRH.net
>>320
jsonもフリーのライブラリが必要だから使わないの?

337:デフォルトの名無しさん
19/07/06 18:01:17.99 u4I8JAFv.net
>>322
貴方が思っているほどjsonはスタンダードではありません
ドカタ業界ではjsonを知らない自称ITスペシャリストは決して珍しくはないのです

338:デフォルトの名無しさん
19/07/06 18:21:08.86 /V3j92xQ.net
>>322
不要やろ?

339:デフォルトの名無しさん
19/07/06 18:26:12.60 AYJdcRRH.net
>>324
MSのサンプルコードですらNewtonsoft.Json使ってるのに?

340:デフォルトの名無しさん
19/07/06 18:31:11.27 ohoKH1ay.net
サンプルはサンプルだろ
すらって何だよ

341:デフォルトの名無しさん
19/07/06 18:34:58.53 eCvKMkr5.net


342:デフォルトの名無しさん
19/07/06 18:35:07.41 /V3j92xQ.net
>>325
うん、不要だよ

343:デフォルトの名無しさん
19/07/06 18:36:40.07 B0+Ee57g.net
JSON.NETの作者もMicrosoftの人間だがな

344:デフォルトの名無しさん
19/07/06 18:45:28.65 IgdFOrod.net
>>329
それはどうでもいい

345:デフォルトの名無しさん
19/07/06 19:32:28.66 GsT6/iYQ.net
だが何なんだよw
よかったな、おめでとw

346:デフォルトの名無しさん
19/07/06 19:38:02.42 xikW3Xex.net
>>320
PrismはMSが作ったんじゃなかったっけ

347:デフォルトの名無しさん
19/07/06 19:39:18.34 u4I8JAFv.net
>>332
元々はMSが作ったサンプルコード
今はMSが開発やめてMSとは何の関係もないコミュニティプロジェクト

348:デフォルトの名無しさん
19/07/06 19:44:49.96 NUGgSxTY.net
jsonってただのデータフォーマットでしょ?
MVVMと何の関係が?

349:デフォルトの名無しさん
19/07/06 19:45:44.22 GNb7wQCP.net
ReactiveProperty標準にしてくれたらいいのにな。

350:デフォルトの名無しさん
19/07/06 20:08:08.17 N/WpPyaa.net
jsonは.net core 3で標準ライブラリが用意されるだっけか?

351:デフォルトの名無しさん
19/07/06 20:47:01.22 NPkITZNc.net
設定ファイルとしてはXMLよりJSONの方が見易いんだけどコメント書けないのがなぁ

352:デフォルトの名無しさん
2019/07/07


353:(日) 03:33:14.86 ID:Cqnlo2q6.net



354:デフォルトの名無しさん
19/07/07 06:24:54.82 Fr9+4/3b.net
UWP終わってWPF復活したん?

355:デフォルトの名無しさん
19/07/07 06:28:01.55 girk9b2Q.net
どこのプロレス団体かと思った

356:デフォルトの名無しさん
19/07/07 11:13:03.83 bwq41KU1.net
復活じゃないと思う
win10ではUWP使え!から他のものも使ってもいいよになっただけ

357:デフォルトの名無しさん
19/07/07 12:51:12.10 +FdC1iN+.net
>>336
標準は既に存在するが、それでもMSの人がjson.netを使うほど
json.netの方が出来が良い

358:デフォルトの名無しさん
19/07/07 12:58:17.74 nrsoMb6V.net
>>342
最近はMicrosoftも脱Json.NETの流れだけどね
レガシーなコードの塊で、後方互換性を担保しながらパフォーマンス改善は難しいことがわかったから

359:デフォルトの名無しさん
19/07/07 13:00:18.65 bwq41KU1.net
VS2019の横のニュース欄にjsonの新しい標準ライブラリの話が書いてあったね
みんなあんなの読んでるのかな?

360:デフォルトの名無しさん
19/07/07 13:09:03.68 1HKUEekm.net
>>344
一般ユーザーは知らなくても、フレームワークが裏で使っているライブラリが変わることでこっそり恩恵を受けている

361:デフォルトの名無しさん
19/07/07 13:12:24.83 Cqnlo2q6.net
Visual StudioのRESTクライアント生成機能使うとJson.NETを使用するコードが生成されてたけどこれ標準ライブラリ使用に置き代わったの?

362:デフォルトの名無しさん
19/07/07 13:17:27.81 bwq41KU1.net
新しい標準ライブラリってまだベータだった気がする

363:デフォルトの名無しさん
19/07/07 13:20:32.30 1HKUEekm.net
>>347
.NET Core3.0と同時リリースだから今年の9月

364:デフォルトの名無しさん
19/07/07 13:21:07.53 1HKUEekm.net
>>346
それはWPFじゃなくね?そのうちスレチって怒られるよ

365:デフォルトの名無しさん
19/07/07 13:38:04.00 Cqnlo2q6.net
>>349
自分もjsonライブラリの話しててそんなこと言うか

366:デフォルトの名無しさん
19/07/07 13:40:42.35 zdokh1sS.net
json.netって設計とかくそな部分あるから。

367:デフォルトの名無しさん
19/07/07 13:40:43.54 1HKUEekm.net
>>350
話の流れを読んでね

368:デフォルトの名無しさん
19/07/07 13:47:39.03 C3Myo4MP.net
>>351
糞かもしれないけどわかりやすくてそこそこ早いから流行ったんでしょ?
もとからあった標準ライブラリがクソ中のクソすぎてMS内部の人から見限られてる状態だから

369:デフォルトの名無しさん
19/07/07 13:53:28.39 zdokh1sS.net
>>353
うん、くそだけど一番人気あるのは事実。
俺の用途に全く会わなくて俺は自作したわw
だから、.ner core 3の標準ライブラリはwelcome

370:デフォルトの名無しさん
19/07/07 13:54:04.56 pwLv7aUD.net
話の流れよりスレタイ読もうぜ馬鹿❤

371:デフォルトの名無しさん
19/07/07 14:23:11.40 Peky1Xio.net
>>355
おまえに興味の無い話なら黙ってればいいだけ

372:デフォルトの名無しさん
19/07/07 14:51:55.13 n4SGi+HU.net
>>352
マイクロソフトがjson.net離れしてるって流れなら>>346も流れに沿ってるよね

373:デフォルトの名無しさん
19/07/07 14:54:50.49 45Wo1jXG.net
>>357
流れを読んでね

374:デフォルトの名無しさん
19/07/07 14:55:54.85 OH31RFen.net
>>358
流れに合ってるよ

375:デフォルトの名無しさん
19/07/07 14:56:38.19 45Wo1jXG.net
>>359
それは良かったね

376:デフォルトの名無しさん
19/07/07 14:58:06.22 OH31RFen.net
>>360
うん

377:デフォルトの名無しさん
19/07/07 17:14:25.68 Fr9+4/3b.net
久しぶりにUWPからWPFに戻ってきたけど、FormattedTextやら、Obsoleteが多くなってるね。
しかし、IOをフルに使う身としては、WPFは快適だ。 UWPでは、FTDIチップ使うのさえ四苦八苦。

378:デフォルトの名無しさん
19/07/08 07:52:57.13 z63wOsqb.net
Dynamic Json使わないの?

379:デフォルトの名無しさん
19/07/08 07:55:33.69 2wLLcnfu.net
使わない

380:デフォルトの名無しさん
19/07/08 08:10:27.82 Vrb0WxW4.net
JSON.NETでもdynamic


381:は使える ジャップ製マイナーライブラリの出番はないよ



382:デフォルトの名無しさん
19/07/08 09:39:38.20 HpabqFFB.net
ジャアアアアアアアア

383:デフォルトの名無しさん
19/07/08 18:13:28.58 peGtLUpD.net
イアン

384:デフォルトの名無しさん
19/07/09 14:15:51.32 utWXujxk.net
>>318
Livet一応生きてるよ

385:デフォルトの名無しさん
19/07/09 17:38:00.23 pw5m4n55.net
>>368
誰か保守してるの?
まぁ Prismしか使ってないけど・・・

386:デフォルトの名無しさん
19/07/09 18:39:48.90 NP6oYl9g.net
亀すまん
>>301
すべてのコントロールのイベントハンドラをMainWindowに書くのか

387:デフォルトの名無しさん
19/07/09 19:36:52.57 DK/SA82p.net
>>369
okazukiとかそのあたりだった気がするわ

388:デフォルトの名無しさん
19/07/09 22:54:31.72 0koNRpRc.net
>>371
合ってる
ReactiveProperty作ってる人

389:デフォルトの名無しさん
19/07/09 23:25:05.11 uHX1iDX/.net
趣味ならいいけどね

390:デフォルトの名無しさん
19/07/09 23:37:20.14 ldgoiSvP.net
>>373
okazukiはMSの中の人だけどLivetのメンテは趣味でやってるだけだよ

391:デフォルトの名無しさん
19/07/10 00:33:04.62 86TD5zpF.net
>>374
あ、いや個人がメンテしているライブラリは趣味で使うんならいいけどねって話

392:デフォルトの名無しさん
19/07/10 01:00:09.57 cBFGEq/D.net
reactivepropertyだってもとはneueccって人じゃなかったっけ?
okazukiは他人に寄生してるだけのイメージ

393:デフォルトの名無しさん
19/07/10 01:08:37.12 kxJIAy2u.net
>>375
それだとオープンソースの多くが使えなくなるぞ


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch