WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part12at TECH
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part12 - 暇つぶし2ch2:デフォルトの名無しさん
11/12/20 21:04:36.52
>>1

3:デフォルトの名無しさん
11/12/21 20:55:19.67


4:デフォルトの名無しさん
11/12/21 21:23:08.52


5:デフォルトの名無しさん
11/12/21 22:45:25.95


6:デフォルトの名無しさん
11/12/21 22:47:14.94


7:デフォルトの名無しさん
11/12/21 22:51:20.54


8:デフォルトの名無しさん
11/12/21 22:53:30.12


9:デフォルトの名無しさん
11/12/21 23:01:55.60


10:デフォルトの名無しさん
11/12/21 23:06:59.39


11:デフォルトの名無しさん
11/12/21 23:09:00.22


12:デフォルトの名無しさん
11/12/21 23:23:12.72


13:デフォルトの名無しさん
11/12/22 00:12:57.93


14:デフォルトの名無しさん
11/12/22 00:14:05.37


15:デフォルトの名無しさん
11/12/22 00:35:19.00


16:デフォルトの名無しさん
11/12/22 02:52:49.15


17:デフォルトの名無しさん
11/12/22 09:14:34.65
Expression Studio入手してみたけど、VisualStudioではエラーも警告も出ず
普通にビルドして実行できる手打ちのXAMLが、なんか山ほどエラー出されて開けないしw

単独で新規プロジェクトとか作っていじってみたけど、操作が訳わからんな

慣れれば使うと楽なのかも知れないけど、慣れるまで時間かかりそうだ


18:デフォルトの名無しさん
11/12/22 10:17:28.87
別のツール使わないとまともに使えない時点で
WPFに見切りつけた方がいいのかもな

19:デフォルトの名無しさん
11/12/22 12:07:16.99
ちゅーとりあるでもよんでおべんきょうしようね♪ おにいちゃん♪

URLリンク(msdn.microsoft.com)
URLリンク(msdn.microsoft.com)
URLリンク(www.microsoft.com)
URLリンク(codezine.jp)

20:デフォルトの名無しさん
11/12/22 12:12:36.98
クリックしたらSilverlightの記事でワロタ

21:デフォルトの名無しさん
11/12/22 16:17:50.48
そーいや
Blendは手探りでやってたから解説ページなんてみてなかったな

22:デフォルトの名無しさん
11/12/22 18:20:48.83
>>20
似たようなもんだろ。ま、確かに微妙に違うとこもあるがw

23:デフォルトの名無しさん
11/12/24 15:59:00.14
WinRTではXamlが使われるそうだけど、WPFやっておけば役に立つ?

24:デフォルトの名無しさん
11/12/24 16:57:25.14
勿論役に立つ、が
WinRTのXAMLって、WPFのXAMLよりもSilverlightのXAMLに近いんじゃなかったっけ

25:デフォルトの名無しさん
11/12/24 17:41:03.85
WPのxamlに似てるのかも…

26:デフォルトの名無しさん
11/12/24 21:15:54.54
WPって何?


27:デフォルトの名無しさん
11/12/24 21:18:58.66
いい本ないっすか?
探したんだけどみんな2007年くらいの古い本みたいで。

28:デフォルトの名無しさん
11/12/24 21:27:20.85
>>26
Windows Phoneじゃないの

>>27
本少ないよなー
まぁWebの解説だけで十分やっていけるよ

29:デフォルトの名無しさん
11/12/24 22:12:04.87
>>28
見かけ上やっていけてるかもしれないけど
基礎すらあやしい

メジャーやレイアウトの仕組みも知らない奴が大半

30:デフォルトの名無しさん
11/12/24 22:30:31.56
Panel系とItemsControl系のコントロール、Binding、UIスレッドの概念あたりを
理解してコーディングしてれば何とかなるんじゃね?

31:デフォルトの名無しさん
11/12/25 00:19:53.58
1)エッセンシャル読む
2)C#をマスターする
3)MSのサンプルを参考にする

あとは必要に応じてな感じやろ

32:デフォルトの名無しさん
11/12/25 01:23:20.85
エッセンシャルとMSDNの各項目を穴の開くほど見比べないといつか痛い目に合う

33:デフォルトの名無しさん
11/12/25 01:55:09.45
DataGridのカレントセルの枠線の
スタイル(非表示に)変更する方法
ありますでしょうか、教えてください。

34:デフォルトの名無しさん
11/12/25 02:23:45.47
DataGrid.CellStyleに適当なTriggerを設定したStyleを入れればいいのかな?

35:デフォルトの名無しさん
11/12/25 04:02:20.08
エッセンシャルってエッセンシャルWPF?
すげえ高いんだけどWPFの将来性を加味した上で買う価値ある?

36:デフォルトの名無しさん
11/12/25 04:15:31.76
WPFというかXAMLの基本的なことを抑えるのには、古い本だけど今でもベストだと思うね。
XAML自体はこれからもまだまだなくならないわけなので、早い段階で読んだほうが捗るのは確か。

37:デフォルトの名無しさん
11/12/25 06:15:55.56
WPF作ったひとの本だしねぇ。そこらの技術者が書いた本よりよっぽど役に立つと思うよ。
「こういう意図でこういう作りになってるんだ」的理解な面で。

というか新しい本買っても「新機能はこんな感じやで」ってレベルで全然掘り下げてないから
役に立たんよほんと、洋書の分厚いやつとか。高いだけ。

38:デフォルトの名無しさん
11/12/25 09:29:11.86
とりあえずamazonの中古で頼んだ。さんくす。

39:デフォルトの名無しさん
11/12/25 10:38:51.09
エッセンシャルは嫌い
読み物としてはいいのかもしれないけど意外と役に立たない

40:デフォルトの名無しさん
11/12/25 13:37:12.19
<l:jQuery Selector="hoge:odd">
    <Setter Property="Background" Value="Cyan" />
<l:jQuery>

<List ItemsSource={Binding}>
    <List.ItemTemplate>
        <DataTemplate DataType="{x:Type Page}">
            <TextBlock l:jQuery.ClassName="hoge" Text="{Binding}" />
        </DataTemplate>
    </List.ItemTemplate>
</List>


41:デフォルトの名無しさん
11/12/25 13:38:22.71
ごめん、ミスった。
WPFもjQueryみたいにかけると良いと思わないって書き込もうとして・・・

良くあるリストの奇数行だけ背景色変えるみたいなのを↑みたいに書けると良くない?

42:デフォルトの名無しさん
11/12/25 13:55:25.27
$じゃないのか?

43:デフォルトの名無しさん
11/12/25 15:26:50.54
Livetで、単にサブウィンドウ開いたり、新しいウィンドウに遷移するのは
TransitionInteractionMessageAction使って簡単にできるんだけど、

新しいウィンドウを開かずに、
今あるウィンドウの中の一部分だけ(例えば1つのGridの中身だけとか)
内容を全く新しいものに切り替えるってできる?

コードビハインドで書いちゃっていいなら

Grid1.Children.Clear();
Grid1.Children.Add(new UserControl1());

みたいな感じで、一応できるみたいだけど…

44:デフォルトの名無しさん
11/12/25 15:42:04.04
なんとかState
VisualState?
なんか違うな
なんかそんな感じの奴

45:デフォルトの名無しさん
11/12/25 15:45:52.10
StyleTargetが柔軟にならんかなとは思う
jQueryはどうでもいい

46:デフォルトの名無しさん
11/12/25 18:51:42.79
>>41
URLリンク(msdn.microsoft.com)
じゃアカンのか?

47:デフォルトの名無しさん
11/12/25 18:57:00.32
知らないということは

その人の世界には存在しないということ

48:デフォルトの名無しさん
11/12/25 21:30:05.51
URLリンク(d.hatena.ne.jp)
以前はここにあるようなVMからVへの操作にもコマンドを使う方法が挙げられてたけど
今はMessengerとかいうのを使う例が多いよね。
VからVMへの操作、VMからVへの操作、両方にコマンドを使うほうがわかりやすい気がするんだけど。
詳しい方、Messengerが選ばれてる理由を教えてください。

49:デフォルトの名無しさん
11/12/26 14:36:44.38
>>48
単純に考えて、VM の V に対する依存度が低くなるので、疎結合が促進される。

コードビハインドを全否定するわけじゃないけど、
V のコードビハインドは V のことだけやるように実装した方が、後々何かとメンテしやすいのは事実。

50:デフォルトの名無しさん
11/12/26 14:39:53.88
>>43
俺は似たようなこと、コントロールの Visibility プロパティをバインドして対処してる。


51:デフォルトの名無しさん
11/12/26 22:02:16.22
URLリンク(nestle.jp)

ここのリストボックスをWPFで実現しているのって見たことないですか?

52:デフォルトの名無しさん
11/12/26 22:07:23.59
よくこんな意味不明なUI作ったなと思う

53:デフォルトの名無しさん
11/12/26 22:22:40.63
右側の3Dリストボックスですよ

54:デフォルトの名無しさん
11/12/26 22:43:06.33
3D Tools使えばできんじゃないの
URLリンク(3dtools.codeplex.com)

55:デフォルトの名無しさん
11/12/26 22:47:53.75
ありがとうございます

ちょっと勉強してみます

56:デフォルトの名無しさん
11/12/27 10:17:25.90
>>51
動作見てるとInfragistics社のコンポーネントに似てるね。

57:デフォルトの名無しさん
11/12/28 11:52:24.11
>>48
そう思うならMVPの方が合ってる
コードビハインド書くんだったらコマンドなんか使わないでインターフェイスベースでやったほうがいい

58:デフォルトの名無しさん
11/12/28 22:59:36.78
>>49,>>57
ビヘイビアに書けばコードビハインド抹殺できますよ

59:デフォルトの名無しさん
11/12/29 01:48:07.38
特注のビヘイビアがj増えていくだけであんまりなあ
コードの再利用率は経験的に3割未満(某CodeComplete談)

60:デフォルトの名無しさん
11/12/29 04:48:33.41
WPF ToolkitのChartについてチュートリアルみたいなサイトないですかね?
とりあえず表示するだけなら、X軸・Y軸の値をペアで用意して何とかなるけど
それ以上の設定を色々やろうとすると、どういじっていいものか情報見つからず

61:デフォルトの名無しさん
11/12/29 19:31:58.13
WinForms用のやつ使ったほうがいいよ
WPFからでも使えるから

62:デフォルトの名無しさん
11/12/29 23:46:51.09
4コアのノートで、C#のTaskで上限4で並列化すると重くなる、酷いと数秒止まる
それ以下にすると段々早くはなるんだがそれだと並列化した意味が・・・
ほかのタスクのWPFは何も影響ない
スレッドの優先順位周辺をいじっても変化なし
こういう物なのかな?

63:デフォルトの名無しさん
11/12/30 00:16:51.72
何を並列化してるのか

64:デフォルトの名無しさん
11/12/30 00:48:18.20
>>62
4コアといいつつcorei5じゃないだろうな?

65:デフォルトの名無しさん
11/12/30 00:52:01.09
>>64
i5はだめなの?

66:デフォルトの名無しさん
11/12/30 00:53:59.28
GCがボトルネックになるような処理をやってるんじゃねーの?
WPF自体のCG負荷が大きいので、
裏でさらにGC負荷をかける処理をやってると酷いことになる。

とりあえずソースを出せ。
それだけの情報じゃ何とも言えん。

67:デフォルトの名無しさん
11/12/30 01:09:03.51
>>65
ノートのi5は2コア

68:デフォルトの名無しさん
11/12/30 01:33:16.71
普通にファイル処理じゃないの?
試した事無いけど並列化したら逆に遅くなりそうだよな

69:デフォルトの名無しさん
11/12/30 01:51:20.61
うわぁi3だった恥ずかしいw

並列化してる部分は色々あって、一番簡単なのは
ネットに転がってるSevenZipSharp.dllを使った

var compressor = new SevenZip.SevenZipCompressor();
compressor.ArchiveFormat = SevenZip.OutArchiveFormat.XZ;
compressor.CompressionMethod = SevenZip.CompressionMethod.Lzma2;
compressor.CompressionLevel = SevenZip.CompressionLevel.Low;
compressor.CompressStream(inStream, outStream);

なコードでCPUフルに使いまくってるときに再描画速度が若干落ちる
SevenZipのLzmaにしてシングルスレッドになると問題なくなる
IOはネックになるほど読んでない
unlock待ちも考えたけど、使ってないところでも遅くなたからこれも無し

i3のグラボの問題の気もして来た

70:デフォルトの名無しさん
11/12/30 04:06:24.96
ゲームでもつくっとるんかいな
プライオリティ落とせば

そもそもタスク分割するのはディスパッチャにおまかせすべきなんじゃないの

71:デフォルトの名無しさん
12/01/02 09:22:00.79
URLリンク(www.atmarkit.co.jp)

読んでて思ったけど、
ugayaさんって頭は良いけと、
説明が下手だよな。
自分よがりな文章になっている。
このあたりは、ufcppさんのほうが上


72:デフォルトの名無しさん
12/01/02 20:58:35.31
このスレのレスみたいな酷い説明だな
Prismのドキュメントのほうがよっぽど解りやすい

73:デフォルトの名無しさん
12/01/02 22:06:19.34
ごめん、ugayaさんを責めるつもりじゃないが、どうも説明の仕方が自分の世界にしかわからないような表現で、入門としてはわかりにくい。

rxのneuccさんのは読みやすいけど
URLリンク(www.atmarkit.co.jp)

責めるつもじゃなくて、せっかくmvvmerとして素晴らしい知識と技術がありながら勿体無いなと思った

74:デフォルトの名無しさん
12/01/02 22:14:52.72
その読みにくさは、ピーデーの川俣さんと似ている
URLリンク(www.atmarkit.co.jp)

75:デフォルトの名無しさん
12/01/02 22:22:10.64
>>74
たしかに川俣さんと同じにおいをugayaさんから感じるな。
二人の記事読んでいると、理解に時間がかかるから
「自分はなんて頭が悪いんだ」と劣等感にさいなまれるw

76:デフォルトの名無しさん
12/01/02 22:28:21.03
川俣氏もだけど技術文書に主観書きすぎなんだよ
エッセイでも書いてたほうが合ってる

77:デフォルトの名無しさん
12/01/02 23:02:05.80
ufcppはわけのわからない前置きが長い
最初は分からないから全部強引に読むけど
理解した後読み返すと最初のほうは必要のない説明だった感じる

78:デフォルトの名無しさん
12/01/03 06:21:24.91
俺、C#とか@ITの川俣さんの記事で0から勉強したけど、個人的にはわかりやすくて良かったけどな
今でも何か調べる時ググるとここの記事出てきて参考になったりするし
俺の感覚的には、他のネットの入門記事とかで、これより読みやすいの見当たらない気がするんだけど


79:デフォルトの名無しさん
12/01/03 07:36:23.24
>>78
川俣の記事は余計な言い回しや主観文章が多くて、書いている内容はわかるけどc#を理解した俺でも読むのがしんどい。
入門と書かないほうがよいと思うけどな、
この記事を読んでc#を嫌う人が増えることが危険だ。
各技術者達は、c#は便利だ面白いなと思ってくれる仲間を増やす事を考えて記事を書いて欲しいな。


80:デフォルトの名無しさん
12/01/03 10:18:15.90
C#って初級から中級に上がるときに壁があるんだよ
初心者向けの記事ばかり充実して上級への足掛かりがほとんどない
MVVMとか言われても分かりませんね
プログラミング業界が初心者相手の方が儲かるようになってるから仕方ないのかもしれないけど

81:デフォルトの名無しさん
12/01/03 10:30:35.45
>>80
レベルアップしたいならJavaの本をいっぱい読んだ方がいいよ
業務で使えるテクニックが結構書いてある事が多い

Javaの本は読者の対象が業務向けでいい

82:デフォルトの名無しさん
12/01/03 12:00:21.58
初級 自分の書きたいコードが書ける
中級 他人が書きたいコードが書ける
上級 誰も書きたくないコードが書ける

83:デフォルトの名無しさん
12/01/03 12:11:33.90
最上級 誰もメンテできないコードが書ける(ツール要らずの難読化に成功!)

84:デフォルトの名無しさん
12/01/03 13:21:46.17
極上級 口を動かすだけであらゆるコードが書ける

85:デフォルトの名無しさん
12/01/03 13:22:20.25
ウィザード級はどうですか?

86:デフォルトの名無しさん
12/01/03 13:29:40.14
wpfの二ちゃんブラウザが待ち遠しい
最新の技術RxLinqEntityF等を使ったもの

87:デフォルトの名無しさん
12/01/03 13:44:11.41
IOCCCみたいに、IOC#CCとか開催されないかなw

88:デフォルトの名無しさん
12/01/03 13:58:59.85
コードが汚いとは言い切れないが、
LINQのクエリ式で書かれたレイトレーサはインパクトがあった

89:デフォルトの名無しさん
12/01/03 14:02:16.89
Rx使ったWPF2ちゃんブラウザって何か素敵。

そういえば、janeって15年前のテクノロジーだよね。ださ~い。

90:デフォルトの名無しさん
12/01/03 17:11:09.48
最低限の情報をRichTextBoxでバインディングで表示させてみたことがある
1000レス分表示させると表示そのものは重めかな程度で何とかなるが
ウィンドウのリサイズで死ねた

91:デフォルトの名無しさん
12/01/03 17:16:48.25
>>89
2000年ごろだろ
15年前ってdelphi 1.0で16bitアプリだぞ

92:デフォルトの名無しさん
12/01/03 23:15:55.36
15年前のテクノロジーによる実装を代替できていないのがWPFを取り巻く現状…

93:デフォルトの名無しさん
12/01/03 23:29:39.81
そんなもんWPF関係ないだろ
スレッドを高速に綺麗に表示するだけだったらWPFでも他のでもすぐできるわ
2chブラウザの差別化はそれ以外の機能

94:デフォルトの名無しさん
12/01/04 08:22:26.20
>>102
2000年はさすがにVC6.0、Delphiのバージョンは5だろ


95:デフォルトの名無しさん
12/01/04 08:40:07.85
>>100
15年前は’97年
VC4.2、Delphi3か4の頃か


96:デフォルトの名無しさん
12/01/04 12:56:11.11
複数レスをテキスト選択、ってのがなければむずかしくないけどねぇ

でもそれがないとおまえら2ちゃんブラウザとは認めないだろ?

97:デフォルトの名無しさん
12/01/04 13:39:28.96
>>96
itemコンテナで作るからダメ
基本リッチテキストかHTMLだろ

98:デフォルトの名無しさん
12/01/04 13:42:18.67
フロードキュメントでやった
表示されないけどコピペすると出てくる空白が実現できなかった

99:デフォルトの名無しさん
12/01/04 15:00:21.49
普通にWebBrowserを使えば良いのでは?
htmldom操作できるぞ

100:デフォルトの名無しさん
12/01/04 15:09:36.30
>>99
webBrowserはwpfバージョンはdynamic前提仕様で使いづらいし
winformバージョン使うとリサイズで画面乱れるし・・・

101:デフォルトの名無しさん
12/01/04 17:24:11.08
もうじまえびょうがしかないな

102:デフォルトの名無しさん
12/01/04 18:06:57.44
それはしねる

103:デフォルトの名無しさん
12/01/04 18:13:13.38
GlyphRunDrawingなんかでリサイクルしながら描画すればいいのかな
クソ面倒臭そう

104:デフォルトの名無しさん
12/01/05 12:46:11.09
今までコンソールでC#をけっこう使ってきて、WindowsプログラミングしてみようとおもってるんだけどWPFってどうなの?

Windows Formsも一度も使ったことないんだけど…どっちにすればいいか悩んでる

105:デフォルトの名無しさん
12/01/05 13:06:01.73
Windows Forms→WPF

106:デフォルトの名無しさん
12/01/05 13:07:37.07
WPFの方がすっきり書けるからオススメ
コードをガリガリ書きたいならWinFormsでもいいと思うが

107:デフォルトの名無しさん
12/01/05 13:12:11.78
GUIがオマケというか標準コントロールをほぼそのまま使うならWinFormsの方がお手軽
後、XPで動かすならwpfはちょっと辛い。逆にVista以降ならwpfの方が速いかな

108:デフォルトの名無しさん
12/01/05 13:39:23.51
そうか、ありがとう
GUIを作り込む…っていうとなんか違う気がするけどまあWPFのほうがすっきりしそうでいいね

まだネットにも情報すくないんだな…

109:デフォルトの名無しさん
12/01/05 13:47:55.08
5年以上前にできてネットに情報少ないものって使うのに苦労するだけ

110:デフォルトの名無しさん
12/01/05 13:48:10.51
社内ツールのようなものならFormsでいい
見た目の豪華さで情弱を騙す必要があるソフト(偽アンチウイルスソフト)などを作るつもりならWPF

111:デフォルトの名無しさん
12/01/05 14:22:41.92
偽セキュリティソフトなんて作らねえよwwwww

いつかWPFの時代は来るのかねえ…

112:デフォルトの名無しさん
12/01/05 14:27:39.37
wpfの二ちゃんブラウザが誕生したら
爆発的に普及する。

113:デフォルトの名無しさん
12/01/05 14:40:45.59
wpfは消えるがxaml使った新しい物が残るんだろうなMetroとはまた別の奴が

114:デフォルトの名無しさん
12/01/05 14:45:04.33
今wfpで作っておけば、簡単に移植できるようになるのかな。

115:デフォルトの名無しさん
12/01/05 15:09:30.59
wpfが消える・・・
勘弁してくれ

116:デフォルトの名無しさん
12/01/05 15:45:07.07
ちなみにFormsは、MS的にはオワコンなんだが。

117:デフォルトの名無しさん
12/01/05 15:57:11.79
もうHTML5でいい

118:デフォルトの名無しさん
12/01/05 15:58:38.37
Forms オワコン
WPF オワコン
Silverlight オワコン
WinRT 始まっていない

どれを使えばいいんだよ

119:デフォルトの名無しさん
12/01/05 16:07:42.82
>>118
Forms とっくにオワコン
WPF 黎明期
SL HTML5普及でオワコン
WinRT 始まってすらいない

よって WPF 最強!

120:デフォルトの名無しさん
12/01/05 16:25:24.36
WPFは糞重いから
Formsで

121:デフォルトの名無しさん
12/01/05 16:52:11.19
結局Formsで落ち着くんだろ

122:デフォルトの名無しさん
12/01/05 17:03:47.12
Forms ってXPと同じでそのうちサポート切れるんだろ。

123:デフォルトの名無しさん
12/01/05 17:43:33.32
Formsやっとけば応用効く

124:デフォルトの名無しさん
12/01/05 17:46:54.02
Forms より ASP.NET MVC の方が応用効かねえか?


125:デフォルトの名無しさん
12/01/05 17:55:03.33
XPのシェアが無視できる程度まで少なくなったらWPFの時代が来る?

126:デフォルトの名無しさん
12/01/05 18:02:07.51
winforms→swing
.netさようなら

127:デフォルトの名無しさん
12/01/05 18:08:44.79
オワテルのJavaとか無いわ
まだQtの方がマシ

128:デフォルトの名無しさん
12/01/05 18:09:49.93
C#が完璧すぎるとは思う
だから.Netが普及してMonoが普及して、WPF採用すれば・・・

129:デフォルトの名無しさん
12/01/05 18:14:31.55
>>119
何年黎明期なんだよアホかwwwwwwww

130:デフォルトの名無しさん
12/01/05 18:16:27.65
ポジション的にもFormsとXPは似ている

131:デフォルトの名無しさん
12/01/05 18:16:42.60
SL jQuery普及でオワコン

132:デフォルトの名無しさん
12/01/05 18:24:45.20
>129
八割以上のVBユーザーが移行し終えて、初めて普及したといえるだろう

133:デフォルトの名無しさん
12/01/05 18:39:45.64
じゃあ永久に普及しなくていいや

134:デフォルトの名無しさん
12/01/05 20:16:53.25
XPが死ねばタスクダイアログも使えるのにね
WPFの挙動もXPだけ違う
XPのせいで縛りが多すぎるwindows

135:デフォルトの名無しさん
12/01/05 20:22:29.40
WinRTでXPもVistaも7もWPFも死ぬ

136:デフォルトの名無しさん
12/01/05 20:48:12.03
ないない
業務で使えない技術なんて普及しても知れてる

137:デフォルトの名無しさん
12/01/05 20:49:33.70
WPFは滅びぬ。何度でも甦るさ。

138:デフォルトの名無しさん
12/01/05 21:05:36.39
死亡フラグやんけ

139:デフォルトの名無しさん
12/01/05 21:06:29.55
>>135
C#だけは鉄板なのは確実なんだから業務でもゲームでもmvvmで書いとくのが先見の明ちゃうか

140:デフォルトの名無しさん
12/01/05 21:12:10.74
ゲームはネタとして、大事なのはMのUIからの分離であって
MVVMそのものは移植性にはほとんど関係ないと思うよ
タブレットとデスクトップじゃ画面構成を完全に変えることになるからVM使い回しなんかまず無理だろ

141:デフォルトの名無しさん
12/01/06 01:49:34.32
>>702
「軍人2万、民間人数千」と言っているダーディンの記事を根拠に「民間人虐殺は5万以上ニダ」という情弱さんですか?

142:デフォルトの名無しさん
12/01/06 01:49:54.37
おっと誤爆w

143:デフォルトの名無しさん
12/01/06 02:38:44.50
誤爆防止機能もついてない2ちゃんぶらうざを使ってる男の人って…

144:デフォルトの名無しさん
12/01/06 04:24:41.21
Blend SDKのTranslateZoomRotateBehaviorみたいなの作ってます。
Behaviorの中にはprivateな各Transform(Scale、Translate、Rotate)があって、
外部には表示用として各Transformのプロパティを公開したいと考えています。
公開するにあたって以下の点を守りたいです。
・外部からは操作できないようにする。読み取りのみ。
・アニメーション中の値もきちんと反映させる。
・バインディングしやすいようにプロパティとして公開。
これを達成するにあたって読み取り専用依存プロパティを別途用意し、
これにTransformのプロパティをバインドさせ、公開するのを考えましたが、
どうやら読み取り専用依存プロパティをTargetとするバインドはできないようです。
なので今はふつうの依存プロパティを用意していますが
見かけ上外部からの変更が可能なのが気になります。(OneWayなので実際は無効です)
上記の3点を達成する上でもっといい方法があれば教えて下さい。

145:デフォルトの名無しさん
12/01/06 08:26:27.49
officeやvisualstudioはwpfで作られているのだから、
wpfでもきちんとしたアプリは作れる
単に技術者がいないだけ

146:デフォルトの名無しさん
12/01/06 09:02:51.37
Officeは違う

147:デフォルトの名無しさん
12/01/06 10:40:37.74
>>145
OfficeはWPFじゃないよ
ネイティブアプリだよ

どうしてこういう間違った情報が流れるんだろ

148:デフォルトの名無しさん
12/01/06 10:49:18.13
>>147
リボンはwpfって固定概念じゃね?

149:デフォルトの名無しさん
12/01/06 11:05:10.21
WPFリボンライブラリ不具合大杉

150:デフォルトの名無しさん
12/01/06 11:19:20.64
先にOfficeのリボンがあってWPFでマネしただけなのにな

151:デフォルトの名無しさん
12/01/06 13:11:17.14
「リボンのDLLがある」って思いがちだけど、
少なくともwpfのあれは「リボンの仕様通りにwpfで書き起こした」だけだからね

152:デフォルトの名無しさん
12/01/06 18:33:58.80
リボンのメリットがいまだによくわからん
ユーザーとして使う分にはリボンでも、抵抗は前より少なくはなってきたけど
リボンでも我慢できるってレベルで、わざわざリボンを使いたくはないんだよな

153:デフォルトの名無しさん
12/01/06 18:42:04.05
メニューバー+複数ツールバーをまとめられる

154:デフォルトの名無しさん
12/01/06 19:10:48.33
メニューの深いところまでドロップダウン中に
アクティブを取られて最初からやり直したことのないものは幸せである

クイックツールバーによるカスタマイズと、ウインドウ幅に応じた自動レイアウト、
それとギャラリーなんか素敵やん?
まあボタン5つくらいで済むならツールバーでもええんちゃうの

155:デフォルトの名無しさん
12/01/06 19:20:04.07
開閉式に出来たらいいのに

156:デフォルトの名無しさん
12/01/06 19:32:39.13
クイックバー小さすぎ

157:デフォルトの名無しさん
12/01/06 19:52:57.01
自動レイアウトはいらない子
劣化UIだよ
office2000で実証済み

158:デフォルトの名無しさん
12/01/06 19:54:42.63
常に同じ位置同じ大きさにあるのがいいレイアウト

159:デフォルトの名無しさん
12/01/06 20:04:46.25
変わるって、折りたたまれるだけじゃん

きみの理想実装したらツールバーにスクロールバー付いてユーザーから袋叩きやろ

160:デフォルトの名無しさん
12/01/06 20:15:37.18
>>159
office2000で使われないメニュー項目を自動的に隠される機能がついてて不評だった
普段使わないけど使いたいときに見つからないから

161:デフォルトの名無しさん
12/01/06 23:13:57.43
開発者のオナニーでどんなメニューにしたっていいよ
旧デザインに切り替えられるなら

162:デフォルトの名無しさん
12/01/07 00:59:16.83
手が勝手に動くみたいに、メニューが常に同じ場所に無いと脳を無駄に使うってことか


163:デフォルトの名無しさん
12/01/07 01:40:11.07
一太郎のESCメニューみたいなのが使い込むと良いんだけどな
本家でも今やオマケ機能扱いだが

164:デフォルトの名無しさん
12/01/07 13:48:48.00
ある日突然自動車のハンドルを操縦桿に変えられたらどうする?

事故続出だべ

165:デフォルトの名無しさん
12/01/08 14:35:54.25
リボンは操作情報が常時広く画面を占有する醜悪なUI
競争の激しいWEBブラウザを見ろ。アイコンやメニューを廃する方向で洗練されている
Win8のエクスプローラにリボンなんてアホだろ

さすが今だに新年が来ていることにすら気付いていない愚鈍が企業がやることだな
URLリンク(www.microsoft.com)

166:デフォルトの名無しさん
12/01/08 16:13:29.80
WEBブラウザはホームページ見るだけだろ
文書作成したりするソフトと比べるなよ

167:デフォルトの名無しさん
12/01/08 16:17:00.38
ブラウザはOffice製品に比べるとボタン類が格段に少なくできるから、
ブラウザとOfficeでは違うUIパターンを採用するのは正解だと思う。

168:デフォルトの名無しさん
12/01/08 17:48:43.36
臨機応変って大事だよね

何でもかんでもリボンとか
馬鹿の一つ覚えだよまさに
バ~カ

169:デフォルトの名無しさん
12/01/08 18:00:59.92
ときにはちゃおを

170:デフォルトの名無しさん
12/01/08 18:03:20.09
なかよしもね

171:デフォルトの名無しさん
12/01/08 19:45:12.59
壁を突き抜けた感じがする

172:デフォルトの名無しさん
12/01/08 20:02:36.17
ちゃんと塞いどけよ

173:デフォルトの名無しさん
12/01/08 23:51:31.90
FORMS→WPFコンバータまだー

174:デフォルトの名無しさん
12/01/09 00:06:39.23
>>173
それに何の意味がある?

175:デフォルトの名無しさん
12/01/09 00:26:48.00
わろた


176:デフォルトの名無しさん
12/01/09 02:23:12.44
意味とか考えちゃ駄目だ

177:デフォルトの名無しさん
12/01/09 13:15:17.11
DataContextに設定したクラスの、明示的に実装したプロパティをバインドに使う方法がわかりません
{Binding Path=(local:IViewModel.Text)} のように丸カッコで括る方法を見かけたのですが
やってみると、
"Binding" で InvalidOperationException がスローされました:
オブジェクト 'null' を PropertyPath のアクセサー パラメーターとして使用することはできません。アクセサー パラメーターは、DependencyProperty、PropertyInfo、または PropertyDescriptor でなければなりません。
と出てしまい、バインドされません
うまくバインドする方法を教えてください。

178:デフォルトの名無しさん
12/01/09 13:37:56.55
明示的実装はprivateメンバになるから無理じゃないかな

179:デフォルトの名無しさん
12/01/09 14:12:56.80
自前で参照用DependencyProperty実装しろってことか

180:デフォルトの名無しさん
12/01/09 15:43:30.68
うむ。

181:177
12/01/09 18:19:20.48
すいません、バインドの仕方がまずかったようです
丸カッコで括る方法でバインドできました

182:デフォルトの名無しさん
12/01/14 18:25:08.58
BlendのDataTriggerとかってStyleには保持できんのか
最強ワロタとか思ってたのに一転して微妙な評価に

URLリンク(social.msdn.microsoft.com)
URLリンク(vspivak.wordpress.com)

183:デフォルトの名無しさん
12/01/16 12:24:29.00
ugayaさんがLivet改造中らしい。ビットバケツのコード見ると、次期バージョンはフォルダ選択ダイアログも搭載するみたいだね。

184:デフォルトの名無しさん
12/01/16 12:29:28.81
この前のしょぼいコードは修正したのかな?

185:デフォルトの名無しさん
12/01/16 12:50:08.87
一番重要なドキュメントが無く、6月で整備とか言いつつまったく目途がたっておらず、新たな予定も開示されない時点で他人が使うものじゃない。

186:デフォルトの名無しさん
12/01/16 13:59:42.27
ugayaが書く文章は意味わからないから、
こんな人のツールなんて使えない。

187:デフォルトの名無しさん
12/01/16 14:39:39.51
>>185
まあまあ、おまいらのプロジェクトだって似たようなものじゃまいかw

188:デフォルトの名無しさん
12/01/16 19:11:57.77
MVVMって、
UserControlつくって、
ContentControl1.Content = new UserControl1()
とかやってUserControl表示するの禁止なの?

189:デフォルトの名無しさん
12/01/16 19:18:58.03
いったい誰が何の権限で禁止するってのさ

190:デフォルトの名無しさん
12/01/16 19:25:56.18
別にしたっていいけどメリットが無いな

<ContentControl>
  <UserControl />
<ContentControl>

で済むし

191:デフォルトの名無しさん
12/01/16 19:31:16.82
なんでもXAMLで済ますのは辞めようよ

192:デフォルトの名無しさん
12/01/16 19:33:31.97
これが「なんでも」って
オールオアナッシングよりひどいぞ

193:190
12/01/16 19:39:59.59
人の好き好きだから別に無理強いはしないけど
>>188のメリットを何か提示できるなら興味がある

194:デフォルトの名無しさん
12/01/16 19:46:46.87
>>191
>>190 は普通だろ。何がおかしいのかよく判らん。

195:デフォルトの名無しさん
12/01/16 19:48:55.80
>>186
いみふ。
下手な文章書くけど優秀なエンジニアはゴロゴロいるが、
うまい文章書く奴がすべて優秀なエンジニアとでも?

196:デフォルトの名無しさん
12/01/16 19:58:56.39
いやいや
声でかい人が文章下手でどうするの

197:デフォルトの名無しさん
12/01/16 19:59:39.89
スポークスマンを雇う

198:デフォルトの名無しさん
12/01/16 20:01:33.71
.NET 系エンジニアで文章うまい人って誰かいるかなぁ。

199:デフォルトの名無しさん
12/01/16 20:05:51.42
操作によってUserControlを入れ替えるのと
必要なとき以外インスタンスを持ちたくない場合なら>>188かな。
俺は入れ替えるだけなら>>190で、プロパティ使って表示非表示制御するけど。

200:デフォルトの名無しさん
12/01/16 20:15:09.02
WPFで、<Image Source=〇〇/> って感じで画像をサムネイル表示、
選んだ画像に簡単な画像処理をして、元のファイルに上書き保存

ってことがしたいんだけど、Imageとして表示に使うと
別のプロセスで使用されているためアクセスできないって怒られてしまう

別名保存なら問題なくできるんだけど…元のファイルに上書きってどうすればできるんでしょう?

201:デフォルトの名無しさん
12/01/16 20:21:12.60
SourceをBitmapImageにして
CacheOptionだかをOnLoadにする

202:デフォルトの名無しさん
12/01/16 20:55:36.38
ugayaは自分の世界に閉じこもったような説明をする。
公に説明しようとしない。

203:デフォルトの名無しさん
12/01/16 21:07:48.92
そんな謗られるような悪いことはしてないと思うがなあ

204:デフォルトの名無しさん
12/01/16 22:08:52.15
ugayaは文章は上手じゃない
短く区切ればいいのに連結して文章を書くから意味がとりづらい

205:デフォルトの名無しさん
12/01/16 22:27:44.06
@ITのは、少なくとも校正は入れるべきだな。

206:デフォルトの名無しさん
12/01/17 04:56:55.54
SetValueとSetCurrentValueの違いについてのページがあったんだが
URLリンク(stackoverflow.com)

SetValueで変更するとバインディング解かれてしまうって回答と、
解かれないんじゃ?っていう返信があることはわかったけど
結局どう違うのかわからん。
どう使い分けたらいいか解説plz

207:デフォルトの名無しさん
12/01/17 09:46:15.91
>>206
ふらっとC#,C♯,C#(初心者用) Part83
スレリンク(tech板)

208:デフォルトの名無しさん
12/01/17 20:33:01.75
Livetのソースコード眺めてたけど、Freezableってあんな使い方していいのか?
Frozen呼んでるのにResponseプロパティ読み書きできるけども

209:デフォルトの名無しさん
12/01/17 20:39:15.12
まずRaiseやGetResponseが!message.IsFrozenならmessage.Freeze()を呼び出す
URLリンク(bitbucket.org)

で、そのメッセージのResponseプロパティの53行目
URLリンク(bitbucket.org)

Twitterの発言を追ってると、Vでメッセージ定義するためにはFreezableにせざるを得なかった的な発言がある
恐らく故意

210:デフォルトの名無しさん
12/01/19 19:07:56.70
流れが止まった

211:デフォルトの名無しさん
12/01/21 12:24:15.38
mediealementって、再生中に解像度を変えると、固まってしまうってバグは既出?

212:デフォルトの名無しさん
12/01/21 13:12:32.08
それどころか
再生中に○○を△△△したら固まる

213:デフォルトの名無しさん
12/01/21 13:27:25.40
駄目すぎワロタ

214:デフォルトの名無しさん
12/01/21 13:51:16.18
【プログラミング部】 PHPが100倍速で動くようになったぞー
スレリンク(poverty板)

215:デフォルトの名無しさん
12/01/21 14:22:20.25
mvvm light toolkitがあれば、十分です。
他はいらねえし。

216:デフォルトの名無しさん
12/01/21 14:43:32.72
>>214
・僕はホンモノのプログラマではありませんから、やっつけ仕事ですよ。
ホンモノのプログラマは、「動いてるように見えるけど、メモリリークだらけじゃないか。直す必要があるかもね」なんて言うでしょう?
僕なら、10リクエストごとにApacheを再起動しますね。

217: 忍法帖【Lv=2,xxxP】
12/01/21 15:35:58.93
Pro WPF for C# 2010 注文してみたわ
楽しみ

218:デフォルトの名無しさん
12/01/21 15:50:09.85
>217

Amazonで、実物の本を触らないで注文したけど、届いて重さと厚さに驚いた


219:デフォルトの名無しさん
12/01/21 16:27:54.20
vs2012っていつ出るんだろうね

220:デフォルトの名無しさん
12/01/21 16:31:30.72
何ぞこれ…
こんなのありかよ

URLリンク(www.visualstudio)ライセンス.com/page018.html

221:デフォルトの名無しさん
12/01/21 16:39:33.70
>>220
つっこみどころ満載のアフィサイトだな

222:デフォルトの名無しさん
12/01/21 16:40:44.59
これだったら年号ついてたらなんでもアフィサイト作れるじゃん…

223:デフォルトの名無しさん
12/01/22 14:34:21.36
URLリンク(www.dotup.org)
うちの6770壊れとるんやろか

224:デフォルトの名無しさん
12/01/22 14:55:04.28
クッソワロタ

225:デフォルトの名無しさん
12/01/22 16:12:05.32
スレリンク(poverty板:3番)

226:223
12/01/22 19:37:49.08
ビデオのアンチエイリアスをアプリ依存に戻したら治ったわ

227:デフォルトの名無しさん
12/01/22 20:12:00.11
ListBox.ContextMenuのCommandのCommandParameterにListBox.SelectedItemを渡したいんですがnullが入ってしまいます・・・。
どうやればよろしいんでしょうか。

↓今の状態
<ListBox x:Name="listBox" >
  <ListBox.ContextMenu>
    <ContextMenu>
      <MenuItem Header="ほげ" Command="{Binding HogeCommand, Mode=OneWay}" CommandParameter="{Binding SelectedItem, ElementName=listBox}">


228:デフォルトの名無しさん
12/01/22 21:25:13.82
>>227
URLリンク(social.msdn.microsoft.com)
これと関係あるか知らんが、こうしないとダメっぽい。
CommandParameter="{Binding PlacementTarget.SelectedItem, RelativeSource={RelativeSource FindAncestor, AncestorType=ContextMenu}}"

229:デフォルトの名無しさん
12/01/22 21:35:29.98
きっついなw

230:227
12/01/22 22:11:46.62
>>228
できました。
ありがとー。

231:デフォルトの名無しさん
12/01/22 22:44:00.29
ContextMenuは見た目通りの要素ツリーになってないんだよね
ContextMenuっていうかPopup全ての話だけど、Windowの直下にContextMenu用のホストがあって、その中に生成されている
だからXAMLの上では要素ツリー上に名前があるように見えるけど、実際に検索すると無いって事態になる
実に紛らわしい糞仕様だね
報告しろよ

232:デフォルトの名無しさん
12/01/22 22:45:23.71
ポップアップは別ツリーのトップだとどこかに書いてあるよね?

233:デフォルトの名無しさん
12/01/22 22:56:28.41
俺は知ってたからどこかでは読んでるはずだなあ。
どこなのかまでは覚えてねえ。

234:デフォルトの名無しさん
12/01/22 22:59:42.73
ビジュアルツリーはそういうもんだろ
論理ツリーは?

235:デフォルトの名無しさん
12/01/23 00:24:34.82
おれらの思いつく突っ込みの9割はちゃんと意味がある仕様だよ

236:デフォルトの名無しさん
12/01/23 01:52:15.70
ウィンドウのサイズ変更中は、ウィンドウ内のレイアウトを書き換えないようにできないのか?
(「ドラッグ中にウィンドウの内容を表示する」を OFF にしたような感じ)
表示するコントロールを多くせざるを得ず、重くてしょうがない。

237:デフォルトの名無しさん
12/01/23 09:32:54.62
win7のおまけの上海みたいにするんじゃないの
自分で

238:デフォルトの名無しさん
12/01/23 11:20:07.72
scrollviewerのようにリサイズしても変わらないものに入れる

239:デフォルトの名無しさん
12/01/23 13:24:46.68
>>236
リサイズ中だけ、リサイズ前の制約を使って
レイアウトの計測フェーズを実行するパネルを作って最上位に配置

Window自体のレイアウトをオーバーライドしてもいいけどね

240:デフォルトの名無しさん
12/01/23 13:27:26.59
いちばん下にcanvasおいて、sizechangedの1秒後にcanvasサイズをウインドウに合わせればいいんじゃね
rxで

241:デフォルトの名無しさん
12/01/24 08:04:12.29
Rxのスロットル(だっけ?)にSizeChangedを通してあげれば実現できると思う。

242:236
12/01/25 00:24:48.61
レスサンクスです!
なんか昨日から書き込めなかった。
お礼が遅れて申し訳ない。

>>238
ワガママながら、レイアウトをサイズ変更に連動させたい

>>239
リサイズ中か、WPF で取得する方法あった?
それが取れれば一番良さそう

243:236
12/01/25 00:31:09.85
>>240,241
Reactive Extension 使って、SizeChanged の頻度を下げるってことですよね?
(スミマセン、rxの動きとかよくわかってないかも)
これだと、サイズ変更した瞬間には再レイアウトが始まらないので、若干都合が悪い気が…

ただ、そもそも Rx という存在を知らなかったので、だいぶ役立ちました。どうもです!!


Forms に ElementHost 使ってみたりしたけど、初回表示が激重になってしまう…

244:デフォルトの名無しさん
12/01/25 01:53:45.98
マウスが押されているかとかをリサイズ中かの判断材料にする。
基本使わないと思うけど、キーボード使ったりサイズは同じような感じで対策すればいい。
リサイズイベントと関係ないのはあまりよろしくないけど。

Rx の Throttle 使うならイベント通知の遅延が許容出来るミリ秒の設定。

Thumb みたいなのがあればいいんだろうけど俺は知らない。

245:236
12/01/25 15:18:15.00
>>244
> マウスが押されているかとかをリサイズ中かの判断材料にする。
なるほど!

> イベント通知の遅延が許容出来るミリ秒の設定。
マウスがはなされるまで遅延させ続ければればいいのね。
ようやく理解できた。

キーボードは、うん、対応しなくても大丈夫だと思う。

246:デフォルトの名無しさん
12/01/25 18:44:18.72
WPFで作るとほかのPCで動作しない可能性が高まる

247:デフォルトの名無しさん
12/01/25 21:10:52.01
>>246
WPF ってか、.NET のバージョンの問題でしょ。
.NET 3.5 までなら、普通に Windows Update してる XP に入ってるし大丈夫でしょ。
.NET 4 が使いづらいのはわかるが。

248:デフォルトの名無しさん
12/01/25 21:36:57.95
グラフィックドライバの問題は時々聞くねー

249:デフォルトの名無しさん
12/01/25 21:37:32.89
どちらかというとドライバー不具合の話じゃないのか?

250:デフォルトの名無しさん
12/01/25 23:45:00.93
すいません、とても緊急なことなんで、教えて頂ければ幸いです。

var thumb = sender as Thumb;
if (thumb == null) return;

var parent = thumb.Parent();
if (parent == null) return;
としたときにthumb.ParentのParentが

実行不可能なメンバー 'System.Windows.FrameworkElement.Parent' をメソッドのように使用することはできません。
というエラーを返してくるんですが、親要素を取得するためにはどうすればいいのでしょうか?

251:デフォルトの名無しさん
12/01/25 23:49:12.11
()を取れよ馬鹿

252:デフォルトの名無しさん
12/01/25 23:50:58.21
GetParentだったら Method
Parent はどう見ても Property

253:デフォルトの名無しさん
12/01/25 23:52:29.48
スレチに回答

254:デフォルトの名無しさん
12/01/25 23:56:16.22
有難うございます。スレチなのですか?一応WPfのことなので…すいません。
>>251
comoさんの所のサンプルコードを動かしてるのですが、()を外すと他の部分に支障が出るんです…
>>252
はい、プロパティを取得したいんです。どうすれば良いのでしょう…

255:デフォルトの名無しさん
12/01/25 23:57:36.51
なんだかんだでお前ら優しいよな

256:デフォルトの名無しさん
12/01/25 23:58:10.70
()を取れよ馬鹿

257:デフォルトの名無しさん
12/01/25 23:59:51.87
ふらっとに括弧外してエラー出るところ書き込みしろ。
エラー内容は予測できているから、そっちで回答してやるよ。

258:デフォルトの名無しさん
12/01/26 00:00:12.05
すいません、スレチであれば何処で聞けば良いか教えて頂けないでしょうか?
他にWPF関連のスレ見つからないもので…

259:デフォルトの名無しさん
12/01/26 00:01:10.45
>>257
ありがとうございます!Parentの()ですよね。
スレ汚しすいませんでした!

260:デフォルトの名無しさん
12/01/26 00:09:02.68
本当すいません、ふらっと出ぐぐったら宮城のSNSが出てきてそっちの登録しちゃいました!
ここの中のふらっとC#だったんですね、本当すいません!今すぐ行きます!

261:デフォルトの名無しさん
12/01/26 00:12:10.25
嵐のような奴だったなwww

262:デフォルトの名無しさん
12/01/26 00:15:59.03
オチが秀逸だなwまた来いよ

263:デフォルトの名無しさん
12/01/26 00:17:31.98
また来いよ。ふらっとにな。

264:デフォルトの名無しさん
12/01/29 14:54:53.92
Effectクラスを継承して、独自のエフェクトを作ることは出来ますか?
BlurEffect, DropShadowEffect, ShaderEffectがあるのは知ってますが、
これらはEffectクラスのどのメソッドを実装して作られているのでしょうか。

同じように、ImageSourceってどういう作りになってるのかなと思って、
WriteableBitmapみたいなものを継承して作ってみようと思ったんですけど、
一体どのメソッドをoverrideすればいいのか分かりませんでした。
abstractになってるのはWidth/Heightプロパティくらいで…

265:デフォルトの名無しさん
12/01/29 15:03:21.38
WPFは5年経ってもまだ普及しないのか。

266:デフォルトの名無しさん
12/01/29 15:27:08.58
WPFはVisual StudioみたいなMSの独占アプリでしか使われない。
出来が悪いが他に選択肢がないから、ユーザーが泣きながら使うと。

267:デフォルトの名無しさん
12/01/29 15:58:04.08
xamlだかなんだか知らないが、GUIのコード意識させるな
winformと使い勝手が違うらしくてメニューの作り方が分からん


268:デフォルトの名無しさん
12/01/29 16:06:47.27
QtとGTKで同じコードがうごかねえ死ねって言ってるようで滑稽なんだけど

269:デフォルトの名無しさん
12/01/29 16:12:20.03
同じコードで動いたら幸せだろ
みんなハッピーだろ

270:デフォルトの名無しさん
12/01/29 16:57:01.75
MSの偉い人はそれがわからんのですw

271:デフォルトの名無しさん
12/01/29 17:00:14.94
COBOLが動いてもうれしくないけど

272:デフォルトの名無しさん
12/01/29 17:01:05.74
そういえばWPFでググってでてくる記事書いてた人達(主に海外)が次々とMS陣営から
いなくなってんだけど

首になったりadobe陣営に移ったり…

273:デフォルトの名無しさん
12/01/29 20:57:18.72
WinRTが出た時点でWPFは切り捨て路線でしょ

274:デフォルトの名無しさん
12/01/29 21:52:52.98
数年後にはオフィスのデスクでみんながタブレット触ってるの?w

275:デフォルトの名無しさん
12/01/29 22:33:01.61
formsみたいな20年前の設計思想に戻りたいとか40代のおっさんかよ

276:デフォルトの名無しさん
12/01/29 22:35:52.71
何か文句があるのか若造

277:デフォルトの名無しさん
12/01/29 23:45:00.85
WinRTはMetro上でしか動かないらしいけど、今後wpf置き換えてく計画なの?

278:デフォルトの名無しさん
12/01/30 00:01:26.85
いや別に
だいたい、デスクトップとタッチデバイスなんてどうせ共通のUIでいけるわけじゃないんだから
同じにする意味がない

279:デフォルトの名無しさん
12/01/30 00:19:50.40
VirtualizingStackPanel を ScrollViewer の下に置いて、
仮想化させて表示させる方法はありませんか?
Stack の子要素のレイアウトを、StackPanel の幅に合わせたいので、
たんに ListBox を置くだけでは不十分でして…

↓表示されませんが、こんな感じです。

<Window Title="MainWindow" Loaded="Window_Loaded">
<ScrollViewer>
<VirtualizingStackPanel Name="stpMain" />
</ScrollViewer>
</Window>

private void Window_Loaded(object sender, RoutedEventArgs e) {
foreach (var ff in System.Windows.Media.Fonts.SystemFontFamilies) {
var txtt = new TextBox() {
FontFamily = ff,
Text = ff.Source
};
stpMain.Children.Add(txtt);
}
}

280:デフォルトの名無しさん
12/01/30 10:05:31.95
>>273
>WinRT
XAML+C#で開発するスタイルは、WPFやSilverlightと変わらんだろw

281:デフォルトの名無しさん
12/01/30 10:26:20.94
端的にいうとWinRTってのはMetro用のWPFだからな。

282:デフォルトの名無しさん
12/01/30 10:29:28.46
ウィンドウ、コントロールは単純に置き換えるとしても
画面遷移だな

283:デフォルトの名無しさん
12/01/30 19:38:37.87
メトロはアクティブ失ったときに5秒以内にデータ全部退避させられないとプロセスkillされるんだぜ
作りが全然違うよ。WPF作れないやつならメトロアプリも作れないだろ

284:デフォルトの名無しさん
12/01/30 19:45:40.14
阿鼻叫喚になりそう

285:デフォルトの名無しさん
12/01/30 22:06:54.05
必要ないなら使わない
これが正解

286:デフォルトの名無しさん
12/01/30 22:21:27.29
XNAもver4が出てからぱっとしないね
新アーキテクチャーのver4自体盛り上がってないし前のver3も死んだようになってる

新しいアーキテクチャーが出たら
両方とも死んじゃうみたいな流れは避けてほしいなあ

287:デフォルトの名無しさん
12/01/30 23:59:44.71
WPFのMono移植ですら難しそうだったが
WinRTになると・・・どうだろ

288:デフォルトの名無しさん
12/01/31 00:37:30.74
Monoは対応する気は無いと明言してるよ
WinRTに限らず、Monoはクロスプラットフォーム開発したいならUIとロジックを分離して、
UIはデバイスの特徴に合わせる必要があるから共通化なんて考えないでそれぞれ個別に作れという方針

289:デフォルトの名無しさん
12/01/31 00:38:06.56
やるわけないだろ

290:デフォルトの名無しさん
12/02/02 20:28:15.93
ちょいと質問です。
現在ViewModelでソートしたコレクションをバインドし、一覧として値を画面に表示しているのですが、
データを更新してもソート順が変わりません(表示する値自体はOnpropertyChangedで変わります)。
データの更新に合わせて画面のソート順も切り替えたい場合は何を使用すればよいのでしょうか?

ちなみに、内部の処理では問題なくソートしなおされていました。
おそらく画面に反映ができていないだけだと思うのですが・・・。

291:デフォルトの名無しさん
12/02/02 21:28:58.72
コレクションクラスに何使ってんのよ
ソートしてるってことはObservableCollection「じゃない」んだろうけど

ObservableCollectionが何実装してるか確認してみれば

292:デフォルトの名無しさん
12/02/03 11:46:28.45
View 側でソートさせるんじゃだめなの?

あとこれ。
URLリンク(d.hatena.ne.jp)


293:デフォルトの名無しさん
12/02/03 11:55:13.47
livet0.99でViewModelのListenerCommandを
View側の複数のCommandにバインドさせて、
RaiseCanExecuteChangedしても
1個のCommandにしかEnabled反映されないんだけど
使い方間違ってんのかな

0.98の自動モードだといけたんだが

294:デフォルトの名無しさん
12/02/03 23:30:45.90
>>291
すみません、書き方が悪かったです。
ObservableCollectionを使用しています。
具体的な手順は、

① ViewModel内で、Linq文の条件ででソートしつつ取得した内容をObservableCollectionに入れる
② 画面用のViewModel内にあるObservableCollectionに①の結果を入れる(参照渡し)
③ Viewで②のObservableCollectionをバインドし、ItemsControlを使って一覧表示

といった感じです(いわゆるMVVMです)。ソートは単純にキーで昇順ソートしています。
データ更新時には①の処理がもう一度行われます(②は画面表示時のみ)。
しかし、実際に更新すると値は変わるのですがソートがされません。
ViewModel内では変わっているのでバインドの更新?ができていない気がします・・・。

>>292
ありがとうございます。
CollectionViewですか!さっそく試してみたいと思います!
.NETは便利機能が多くて凄いけれど覚えるのも大変ですね・・・。

295:デフォルトの名無しさん
12/02/04 00:34:01.33
Vにバインドされている(VMの)コレクションの要素をちゃんと並び替えてるのか?
LINQから流し込むなら、一旦ClearしてAddを繰り返す必要があるはずだが

296:デフォルトの名無しさん
12/02/04 00:39:00.24
考えられる原因
①Add、Remove、InsertしてないのでCollectionChangedが発行されていない
②ViewModel.ItemsにObservableCollectionを代入する時にOnPropertyChangedを発行していない

たぶん②

297:デフォルトの名無しさん
12/02/04 23:37:19.49
下記のようなコレクションビューソースをWindow.Resourceで定義しており
<CollectionViewSource x:Key="DisplayItems" Source="{Binding Items,Source={StaticResource ViewModel}}" />

次のようにListBoxにバインドしています
<ListBox ItemsSource="{Binding Source={StaticResource DisplayItems}}" />

この状態で、XAMLからItemsSourceに入っているListCollectionViewインスタンスのCustomSortに
IComparerを実装したインスタンスを設定するにはどうすればよいでしょうか

コードビハインドに書けば以下のコードだけで済みますが
(FindResource("DisplayItems") as ListCollectionView).CustomSort = new CustomSorter();

298:デフォルトの名無しさん
12/02/04 23:43:55.97
間違えた

((FindResource("DisplayItems") as CollectionViewSource).View as ListCollectionView).CustomSort = new CustomSorter();

こうか
別にコードビハインドに書けば済むことですが
CollectionViewSource.SortDescriptionsはXAMLで簡単に指定できるようになっているのに、何だかなあと思った次第

299:デフォルトの名無しさん
12/02/06 17:55:23.51
MediaElementにdoubleclickイベントが無いようなので、親windowのダブルクリックイベントで代用して
MediaElementの部分がダブルクリックされた時だけアクションが起きるようにしたいのですが
どう書けばいいですか?

300:デフォルトの名無しさん
12/02/06 20:03:30.45
>>295-296
うおお、ありがとうございます!無事出来ましたー。
どうやらClear&Addしていなかったのが原因だったようです。
Linqの結果をリストにつめて、foreachでコレクションにAddしていったら動きました。

301:デフォルトの名無しさん
12/02/06 22:39:44.42
>>299
ウィンドウじゃなくてContentControlの子にしてContentControlのイベント拾えば

302:デフォルトの名無しさん
12/02/07 00:38:10.71
>>264をお願いします

303:デフォルトの名無しさん
12/02/07 01:00:39.22
>>302
wpf effect でググると出てくるサイトは嫌いか?
URLリンク(www.ipentec.com)

304:デフォルトの名無しさん
12/02/07 01:10:21.93
下はしらんけど、上は調べれば出てくるからまあ。
ただ、Effect 作りたいなら Shazzam っていうツールを使うといいよ。
URLリンク(shazzam-tool.com)

305:デフォルトの名無しさん
12/02/07 01:32:33.74
>>303,304
ありがとうございます。
すいません質問が悪かったようです。
ShaderEffectとHLSLを使えば、独自のエフェクトを実装できることは承知しています。
でもBlurEffectとDropShadowEffectはShaderEffectではなく、Effectクラスを継承していますが、
例えばもし自分がBlurEffectと全く同じものをEffectから継承して作成するには、どうしたらいいのでしょうか。
単にWPFのEffectの仕組みに対する興味なのですが、MSDNライブラリでEffectクラスの解説を読むと
> カスタム ビットマップ効果を実装するには、Effect クラスから派生させます。
と書かれているので、ShaderEffectを使わずに、Effectを実装する方法が気になりました。
Effect関連のソースコードが公開されていれば、簡単に分かると思うのですが。

306:デフォルトの名無しさん
12/02/07 01:39:29.94
無理
internalな抽象メンバ持っててパブリック拡張できない抽象クラスっていうのは
MSライブラリにはすごくよくあること

307:デフォルトの名無しさん
12/02/07 09:11:45.47
WPFのMessageBoxってGDIなんだな

308:デフォルトの名無しさん
12/02/07 09:36:59.67
わからないことがあるならILSpyとかでライブラリ覗いてみろよ
そこから見えないとこはC++で書いてあるだろうさ

309:デフォルトの名無しさん
12/02/09 12:07:03.79
windowのBackgroundを黒にして
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;

ってな感じでフルスクリーンにすると画面の右端と下端に白線が入るんですけど
直す方法はないですか?

310:デフォルトの名無しさん
12/02/09 12:10:24.58
RelativeSource冗長すぎなんだが改善予定ないのかね

311:デフォルトの名無しさん
12/02/09 12:46:22.66
>>309
実行したけど出ないぞ win7

どうせ試した奴がwindow閉じられなくなるっていたずらだろ
つまらねえよ

実行前にわかったからあらかじめcloseボタン作ったぞw

312:デフォルトの名無しさん
12/02/09 13:28:23.73
>>311
いやあ、win7-64bit機2台で試したけど両方とも出るんです。
やってる事はこれ↓だけなんですが。

1:VC# 2010ExpでWPFアプリケーションのプロジェクトを作成

2:windowとgridのbackgroundの色を黒に変更

3:csに以下のソースを追加
private bool isfull = false;
private void Change_Screen()
{
if (!isfull)
{
this.WindowStyle = WindowStyle.None;
this.WindowState = WindowState.Maximized;
}
else
{
this.WindowStyle = WindowStyle.SingleBorderWindow;
this.WindowState = WindowState.Normal;
}
isfull = !isfull;
}
private void Window_KeyDown(object sender, KeyEventArgs e)
{
if (e.Key == Key.F11)
{
Change_Screen();
}
}

313:デフォルトの名無しさん
12/02/09 14:41:25.48
>>312
Win7-64bitで試したけど出ないね。

>>311
開発者ならAlt+F4くらい覚えとけ。

314:デフォルトの名無しさん
12/02/09 15:01:51.43
>>312
拙者もwindows7 64bitで試したけど出ないでござるね。

315:デフォルトの名無しさん
12/02/09 15:10:31.80
ドライバ臭いな

316:312
12/02/09 15:15:33.89
システムの詳細設定・パフォーマンスオプションの視覚効果で
「ウインドウとボタンに視覚スタイルを使用する」を一旦オフにしてから再びオンにすると
白線が出なくなりました。
でも他のアプリケーションではそんな事をしなくても元々出ないので気になります・・・

317:デフォルトの名無しさん
12/02/09 15:27:21.68
>>316
ドライバだろ。
グラボ何使ってる?

318:312
12/02/09 15:36:22.32
>>317
一台はnvidiaのGT-520でもう一台は2600k内蔵です。
どっちも付属ディスクのドライバだった気がします。

319:デフォルトの名無しさん
12/02/09 20:52:15.92
怒らないからwindowクラスの上に何載せてるか言ってみ

320:デフォルトの名無しさん
12/02/09 21:43:46.49
>>313
ALT+Space派の俺が参上

ウィンドウの左上隅をダブルクリックして閉じるのは、MS的には非推奨なんだっけ

321:デフォルトの名無しさん
12/02/09 21:52:01.69
タスクマネージャから終了派の俺様の登場だ

322:デフォルトの名無しさん
12/02/09 21:59:07.38
taskkill派を忘れてもらっては困るね、諸君

323:デフォルトの名無しさん
12/02/09 23:08:39.76
XAML難しすぎ

324:デフォルトの名無しさん
12/02/09 23:41:26.41
そのうち快感になる

325:デフォルトの名無しさん
12/02/10 00:27:43.60
バインディングとかわかる機能だけ便利に使ってる

326:デフォルトの名無しさん
12/02/10 08:39:24.48
だいぶ慣れてきたけど、最初の敷居が高かった気がする・・・

327:デフォルトの名無しさん
12/02/10 11:46:19.93
なにこれ重たい

328:デフォルトの名無しさん
12/02/10 12:19:40.55
体重計が喋ってる

329:デフォルトの名無しさん
12/02/10 12:24:44.27
WPF が重いなんて言うのは嘘だな。
Core i7 メモリ12GB で使ってるけど全然軽いじゃん。

330:デフォルトの名無しさん
12/02/10 12:34:23.62
リッチ!抱いて!

331:デフォルトの名無しさん
12/02/10 12:38:26.55
俺もi72600と16GBとHD5970だけど別に重くないと思うな

332:デフォルトの名無しさん
12/02/10 13:00:58.20
PhenomII X4 955 3.20Ghz
4GB
HD5770
の、一般的なPCスペックだけど別に重くないぞ?

333:デフォルトの名無しさん
12/02/10 15:35:46.42
確信した!!!

あと5年はWPFは普及しない!!!

334:デフォルトの名無しさん
12/02/10 15:55:04.19
複数のテーマを使い分けるにはどうしたらいいですか?
たとえばslider1とslider2を違うデザインにしたいんですが。

335:デフォルトの名無しさん
12/02/10 18:20:18.24
>>334
それは同じウィンドウでということ?

336:デフォルトの名無しさん
12/02/10 18:21:42.48
それではもうテーマとは言えないだろう。

337:デフォルトの名無しさん
12/02/10 18:21:42.96
ここでXAMLが理解できないといってる奴は、昔ポインタが理解できないと言ってた奴等と同じ匂いがする。

338:デフォルトの名無しさん
12/02/10 18:22:44.08
>>333
その頃にはFormsは完全に亡んでいそうだな。
もっともその前に日本が亡んでいそうだが。

339:デフォルトの名無しさん
12/02/10 18:24:43.38
ポインタを理解していたら、XMLの遅さを理解しているはず。
結局はゲイツが正しかったわけだ。やはり技術者上がりの経営者は違う。

340:デフォルトの名無しさん
12/02/10 18:39:11.24
>>334
コントロール・テンプレート?

341:デフォルトの名無しさん
12/02/10 21:27:48.68
Core i5 2500、DDR3-SDRAM@4.00GB
WinVista+SP2 (x86)

今時じゃ微妙スペックなマシンだが、別に重くないがなあ。
.NET Frameworkの宿命で、アプリの初回起動だけは時間掛かるがね。

>>333
5年で普及するなら余裕ってもんよ。

342:デフォルトの名無しさん
12/02/10 21:55:41.34
WPFとVB6で作られたソフトは使いたくない

343:デフォルトの名無しさん
12/02/10 22:01:01.54
WPFでてからすでに5年はたってるんじゃまいか

344:デフォルトの名無しさん
12/02/10 22:27:15.92
WPF使いたくないのはともかく、なぜVB6を引き合いに出す

345:デフォルトの名無しさん
12/02/10 23:16:04.55
>>342
使われてるフレームワークでアプリを選ぶって無理じゃね?

346:デフォルトの名無しさん
12/02/10 23:56:10.22
今のところWPF使ってる人の方がWinForms組よりも圧倒的に平均スキルが上だろうから
そういう意味ではWPFで作られたソフトの方が良いのかもしれない

347:デフォルトの名無しさん
12/02/11 00:59:20.71
Behavior作ってBlendで配置してみたらICommandを設定するつもりのプロパティが
トリガーとして表示されるんだけどなんでだろう
どうやってもトリガーのままで、しょうがないからXAML手書きしてる

348:デフォルトの名無しさん
12/02/11 02:19:07.47
>>346
業務でWPFを推す奴は総じてスキルが低いのはなぜなのか。

349:デフォルトの名無しさん
12/02/11 02:26:31.67
ビハインド主体のWPFでも移行コスト高いんかね

350:デフォルトの名無しさん
12/02/11 03:13:08.11
WPFはなんかの拍子で不安定なるのが多い
業務で使うなら安定したWinFormsだろ

351:デフォルトの名無しさん
12/02/11 08:33:29.57 BE:285538695-PLT(12101)
製品でつかったことはあるが、環境依存不具合が問題だな。
性能の低いPCだとみたことない現象がボロボロと

352:デフォルトの名無しさん
12/02/11 08:40:56.52
>>348
本当にスキルのあるやつは最先端の技術を難なく使いこなせても
実際の業務では枯れた記述を使う。

353:デフォルトの名無しさん
12/02/11 08:41:38.62
記述になっとる・・

354:デフォルトの名無しさん
12/02/11 08:46:09.74
遅レスだけど、
川俣氏の記事は最高に読みやすい
特に@itのC#記事には助けられた。
読みにくいと言っている奴は、単に己のスキルが低いだけでは?

355:デフォルトの名無しさん
12/02/11 09:01:57.53
川俣の記事はマニアック過ぎて一般向けではないな。

356:デフォルトの名無しさん
12/02/11 09:06:21.65
あの人の記事、個人的には好きだし役立つと思ってるけど

WPFのことは何も書いてないから、このスレ的にはスレ違い??

357:デフォルトの名無しさん
12/02/11 09:16:59.24
>>355
たしかに、ライトユーザ向けではないが、
熟練者には貴重な記事だと思った。
読んでて感心したから。

尾上氏の記事はまあ、、、たしかに読解が困難だなあ。
これも俺のスキルが低いからかな?

358:デフォルトの名無しさん
12/02/11 10:05:25.25
俺も川俣のc#入門本に助けられた
12か月ほどどこに行くにも川俣の本持って行って空き時間に何度も読んでた
同じ本を何度も読んだのは人生であの本だけ
期待してた続編はいまいちだったけど…

359:デフォルトの名無しさん
12/02/11 10:05:57.56
1~2か月ね…

360:デフォルトの名無しさん
12/02/11 10:12:15.39
川俣が読みやすいというのは関数型よりCOBOLのソースの方が読みやすいというような感覚に近い
密度の問題だな

361:デフォルトの名無しさん
12/02/11 11:04:20.65
暇つぶしに読むほど熱中したのはPythonのリファレンスだけだわ

362:デフォルトの名無しさん
12/02/11 20:56:21.06
>>352
スキルある奴は運用や保守のことも考慮してるってことなんだよな。

363:デフォルトの名無しさん
12/02/11 21:36:48.95
スキルのあるヤツが作ったドカタプログラムとドカタプログラマーの作った
ドカタプログラムは全く別のもなのである。

364:デフォルトの名無しさん
12/02/11 21:41:21.71
そして同じ値段で売られるという

365:デフォルトの名無しさん
12/02/11 21:51:32.24
スキルのあるプログラマはドカタプログラマーの数分の1の期間で作るので値段は安くなる。

366:デフォルトの名無しさん
12/02/11 22:10:34.51
同じ値段で売ればより原価率が下がるじゃん
会社としてはそっちの方が正義やろ

367:デフォルトの名無しさん
12/02/11 22:23:22.63
個人としてはコキ使われてる感半端ねー

368:デフォルトの名無しさん
12/02/11 22:24:52.38
スキルのあるプログラマは
給料は殆ど変わらないのに
ドカタプログラマーの分まで働かされて
気が狂って消息不明になると

369:デフォルトの名無しさん
12/02/11 22:43:00.30
スキルのないプログラマがスキルのあるプログラマの内面を想像しようだなんて
下手の考え何とやらだと思いませんか

370:デフォルトの名無しさん
12/02/11 22:43:15.08
バギーで動かない、読めないコードの保守を頼まれたらキレるべし。

371:デフォルトの名無しさん
12/02/12 00:01:21.47
>>370
プロであれば切れる前にぼったくる事を考えるべし。

372:デフォルトの名無しさん
12/02/12 00:08:32.54
「リプレースした方が『結果的には』安く済みますよ!」

373:デフォルトの名無しさん
12/02/12 00:26:18.71
二月に入ってから米で妙な噂あるよな
何なんだろうね

374:デフォルトの名無しさん
12/02/12 02:30:38.66


375:デフォルトの名無しさん
12/02/12 03:40:52.91
MSに対してFUDFUDいうほうがFUDしてる罠

376:デフォルトの名無しさん
12/02/12 09:30:52.42
怪しいお米

377:デフォルトの名無しさん
12/02/12 10:08:57.45
>>372
「結果的に安く済む」の根拠を会社の上層部に分かりやすく出すのは難しいし
動くプラットーホームが無くなったときに足元を見てぼったくるチャンスを逃す事にもなる。

よって無駄な延命措置をするのがプロのお仕事。

378:デフォルトの名無しさん
12/02/13 12:06:04.79
どうでもいいが、スレ違いの話で盛り上がるなよ。
結論はWPF最強ってことでよろしく。

379:デフォルトの名無しさん
12/02/13 12:24:47.11
source1のHeightPropertyをsource2のHeightPropertyの1/10の値でbindingさせたいのですが
C#コードで書くとどうなりますか?

380:デフォルトの名無しさん
12/02/13 12:42:17.08
source1.HeightProperty= @source2.HeightProperty.Convert((x)=>return x/10);

381:デフォルトの名無しさん
12/02/13 12:44:16.08
先頭の@が抜けてた

@source1.HeightProperty= @source2.HeightProperty.Convert((x)=>return x/10);

382:デフォルトの名無しさん
12/02/13 16:23:30.40
wpf2ちゃんブラウザまだ?

383:デフォルトの名無しさん
12/02/14 06:27:56.46
RoutedCommandって
・Commandプロパティに設定されてる要素から始まって、
ルート要素に行くまで、親要素でExecute、CanExecuteの評価をする。
・CommandBindingでハンドラがヒモづけられてる要素あるいは
内部で既に実装を持ってる要素で動作する。
・動作した後も引き続きルート要素まで登っていく
機能で、
VMでは定義せず、もっぱらV上で完結するコマンドと理解しておk?
うーんよくわかんね。

384:デフォルトの名無しさん
12/02/14 09:02:15.30
exactly

385:デフォルトの名無しさん
12/02/14 09:04:37.14
補足すると

>・動作した後も引き続きルート要素まで登っていく

イベント引数の Handled に true をセットでイベント終了。


386:デフォルトの名無しさん
12/02/14 14:48:16.64
>>385
てことは一度動作するとそこでルーティングは終わっちゃうのね。ありがとう

387:デフォルトの名無しさん
12/02/14 18:59:57.82
TextBlock1.GetValue(Canvas.LeftProperty)
の値が変化した時にイベントを発生させてメソッドを呼び出すにはどうしたらいいですか?

388:デフォルトの名無しさん
12/02/14 19:41:24.88
>>387
つ 依存関係プロパティと通知

389:デフォルトの名無しさん
12/02/14 21:33:00.88
ひどい解決法だな

390:デフォルトの名無しさん
12/02/14 21:55:45.95
DataTriggerでAction実行するのと変わらんだろ

391:デフォルトの名無しさん
12/02/14 22:40:20.75
まっとうな通知法がないってことじゃないか

392:デフォルトの名無しさん
12/02/14 22:41:32.67
YES Sir

393:デフォルトの名無しさん
12/02/14 23:24:02.99
今の時代、何が真っ当か決めてるのはフレームワークだからねえ
従えないなら出てけと言わんばかり

394:デフォルトの名無しさん
12/02/15 00:49:37.96
WPFを使い始めようと思うのですが、ちょっと入門してみたところ、
どうやらWPFはMVVMというパターンを使うのが当たり前のようになってると感じました。
Windows Formsを使っていたときは、パターンなんて何も考えずに書いてましたが、
WPFを使うにはMVVMを勉強しないといけないですか?
MVVMを知らずにWPFを使ってる人はいるのでしょうか。

395:デフォルトの名無しさん
12/02/15 01:02:56.72
MVVMなんか無視でおk
WinFormsと同じように使える

396:デフォルトの名無しさん
12/02/15 01:03:56.13
>>387
「変化した」じゃなくて「変化させる」コードを捕まえればいいんじゃないの

397:デフォルトの名無しさん
12/02/15 01:51:53.25
>>394
MVVM使わないとWPFのメリットあまり無いけど
それでもいいのなら

398:デフォルトの名無しさん
12/02/15 06:28:21.39
MVVMでなくてもいいが、WindowやControlと、Source、DataContextは別にしてバインドさせた方がいい
その方が圧倒的に楽にいろいろできる

399:デフォルトの名無しさん
12/02/15 09:05:14.75
>>398がいい加減な事書いてるけど、ちっこいプログラムしか作らない
日曜プログラマーな人なら、面倒なだけで、自己満足を除いては
メリットを感じる場面はほとんどないだろうな

400:デフォルトの名無しさん
12/02/15 09:31:22.60
MVVMがメリットてw
自由度が上がった分複雑になっているからそれをカバーするために
バインディングが強化されているのであって、決してMVVMは目的ではない
あくまで表現力の強化がWPFを使う目的

401:デフォルトの名無しさん
12/02/15 10:28:04.09
MVVMはインフラとドキュメントがまだしっかりしてないから初学者には厳しいね

402:デフォルトの名無しさん
12/02/15 10:53:57.34
WPF はバインドを基本に設計されてて、イベントドリブンの詰めが甘々な仕様です。
Forms と同じようにイベントドリブンにすると、あり得ない挙動をするから要注意。
MVVM は万能かつ絶対ではないが、せめて V と VMM(VM と M を一つのクラス) とかに分けてバインドさせる方がよい。

403:デフォルトの名無しさん
12/02/15 10:55:26.41
>>401
Livet があるだろ。

404:デフォルトの名無しさん
12/02/15 10:56:48.20
コマンドもイベントドリブンだから

405:デフォルトの名無しさん
12/02/15 11:31:01.40
標準インフラ的にViewModelは存在すらしてないからな

406:デフォルトの名無しさん
12/02/15 15:09:18.42
パターン知らなくてもできる そりゃできるだろ。
LINQ知らなくても、ラムダ知らなくても、匿名メソッド知らなくても同じ動きのコード書けるからな。
でもそれがどういう意味かわかるよな。

407:デフォルトの名無しさん
12/02/15 17:39:06.24
>>406
( ゚д゚) b しーっ、それじゃ例えが高尚すぎて、ここの人達ついてけないよ。

> クラス知らなくても、変数知らなくても同じ動きのコード書けるからな。

くらいまで落とさなくちゃダメ!

408:デフォルトの名無しさん
12/02/15 18:08:12.88
初心者にMVVMはお勧めできないな。

まずはDataTemplateやBindingの基礎をしっかり理解した方がいい。

すると、コードビハインドでは面倒な場面が出てくるから、
その解決策としてMVVMを学ぶといい。

409:デフォルトの名無しさん
12/02/15 18:31:59.55
だね
従来型の弱点がわかってて
それを違う形にしたい人向け

したくない人はそのままでいい

410:デフォルトの名無しさん
12/02/15 20:28:29.28
>>406の挙げてるような使ったら楽になる類のものとは違ってトレードオフだからな
適用するべきか否か自分で判断できないようなレベルで使っても
まず間違いなく余計に手間かかってデメリットのほうが多い

411:デフォルトの名無しさん
12/02/16 01:57:21.99
WPFのメリットで一番わかりやすい点はデザイン面なんだから
さっさとBlend配布か統合して欲しい

412:デフォルトの名無しさん
12/02/16 07:42:14.52
お買い求めください

413:デフォルトの名無しさん
12/02/16 07:48:44.56
おことわりします
WPFなんて要りません
工数が無駄に増えます

414:デフォルトの名無しさん
12/02/16 08:57:52.62
>>412-413
自演臭い

415:デフォルトの名無しさん
12/02/16 11:11:11.05
XAMLの歴史

WPF発表~

普及しない

silverlightでどうだ~

普及しない

wpにも載せてみました~

普及しない

metro作ったよ~

416:デフォルトの名無しさん
12/02/16 16:52:10.09
むしろ開発が中止されたManagedDirectXのほうが普及し使われてる感がある。

417:デフォルトの名無しさん
12/02/16 17:39:43.83
項羽と劉邦級の一発逆転があるかもしれない!

418:デフォルトの名無しさん
12/02/16 20:41:50.78
初回起動が速ければ使う方から受け入れられていくと思うんだよね
スプラッシュは必須か

419:デフォルトの名無しさん
12/02/17 01:37:43.87
ユニットテストやりやすくなった分だけ捗る

420:デフォルトの名無しさん
12/02/17 11:32:21.86
mediaelmentでRepeatBehavior="Forever"として、
連続再生していたら、動画が停止してしまいます。

ディスプレイ解像度を変えたら停止するようなのですが、
他に原因ってあるのでしょうか。

421:デフォルトの名無しさん
12/02/17 16:04:52.57
WinFormで作ったエディターコントロールをWPFに移植しようと思う
Controlだと読み込んだファイルの内容を描写できないから、エディターコントロールを作りたい場合はFleamworkElementを継承して使うという感じでいいんだよな?


422:421
12/02/17 16:17:45.18
× 描写できないから
○ 独自に描写できないから

423:デフォルトの名無しさん
12/02/17 16:37:31.84
>>421
Controlだからって直接描画できない事は無いよ。

けど、性能面やTemplateへの対応を考えると、
描画を担当する部分はFrameworkElement派生で作って
それをControl派生クラスでラップする形がいいと思う。

424:デフォルトの名無しさん
12/02/17 21:15:26.84
>>423
ふむふむ
そういう風に作るといいのか
参考にしてみる
ありがとう


425:デフォルトの名無しさん
12/02/19 12:39:39.23
DataGridにクラス配列を読み込んで列を作りたいのですがどうすればいいですか?
public class Person
{
public int num;
public string name;
}

List<Person> persons=(List<Person>)data;
dataGrid1.ItemsSource=persons;
と書いたらとりあえず行は読み込んだみたいですが続きがわかりません。

426:デフォルトの名無しさん
12/02/19 13:13:57.17
おーとじぇねれーとからむとかいうプロパティ

427:デフォルトの名無しさん
12/02/19 13:16:02.99
あ、AutoGenerateColumnsは規定でtrueだから違うな
「Personのnumとnameがプロパティになってない」からだ

428:デフォルトの名無しさん
12/02/20 01:43:10.26
多重起動を防止したいのですが、既に開いてる方の実行ファイルを閉じて
新しい方を開くのはどうすればいいですか?

429:デフォルトの名無しさん
12/02/20 02:14:14.40
SendMessageでもWCFでも何でもいいが
メッセージ受け付けるようにしといて閉じろ!って念を送れ

430:デフォルトの名無しさん
12/02/20 02:19:14.54
>>428
WCF使ってプロセス間通信すれば出来ると思うが
既に開いている方は、必ずしも安全に閉じられるとは限らないから
よく検討してから仕様決めるべきだね

431:デフォルトの名無しさん
12/02/20 03:24:06.37
閉じろーゴマァ!

432:デフォルトの名無しさん
12/02/20 18:03:13.76
WPFのツリービューの欠点はWindows.Formsのツリービューと比べて
アイコン付きのノードを表示するのに時間がかかりすぎることだ。
数万のフォルダを表示するのに何分もかかる。結局、
TreeViewItemのHeaderに文字列を入れるしかなかった。

433:デフォルトの名無しさん
12/02/20 19:05:35.42
TreeViewに限らず、ImageコントロールのVisualTreeへの追加は遅いね。
画像のデコードを別スレッドでやっても遅い。

仮想化されたListViewのItem内で使うとスクロール時のFPSが大きく下がるし。

434:デフォルトの名無しさん
12/02/20 19:58:34.25
エクスプローラーがフォルダツリー表示するときにいちいちツリー作ってると思ってるのかい

435:デフォルトの名無しさん
12/02/20 20:25:42.80
万単位扱うの好きだよなw
見もしないデータグリッドに100万項目並べてみたり

436:デフォルトの名無しさん
12/02/20 20:40:16.93
100万はともかく、万単位は軽々と扱えて欲しいもんだ

それ位の余力がないと
ItemTemplate、VisualState、Behaviorの使用を抑制する必要が出てきて
WPFのメリットが活かせない

437:デフォルトの名無しさん
12/02/20 20:45:58.99
デコードが遅いんじゃないのだからデコードを別スレッドにしたところで意味無いわけで
何が言いたいのやら

Imageが遅いのは大抵スケーリングのせいだよ
そのためにDecodePixelHeightで使用時に近い大きさにデコードするようになってるわけで

438:デフォルトの名無しさん
12/02/20 20:47:39.54
データ1万個並べるプログラマに何言っても無駄じゃないの
Googleが検索結果一万個並べて表示してるか?

439:デフォルトの名無しさん
12/02/20 20:52:04.49
大きさが不ぞろいなアイテムだとレイアウトエンジンがフンガー言うし
例えばListBoxにWrapPanelをコンテナにして水平スクロールを切り、Imageを追加すると凄いことになる
欠陥品以外の何なのか

440:デフォルトの名無しさん
12/02/20 20:52:25.12
仮想化されたListViewって書いてあるけど違うのか?

441:デフォルトの名無しさん
12/02/20 20:54:23.65
>>439
俺もわざとやったことあるな
GUIが本当に固まるの

仮想化されたWrapPanelって外人が作ってたな

442:デフォルトの名無しさん
12/02/20 21:03:51.26
>>438
実用アプリでデータ1万件表示は求めんよ

言いたいのは、サンプルアプリレベルで1万件表示できないと、
実用アプリじゃ100件でも厳しいって事

Googleだって、検索結果1万件は非現実的だが、
HTMLのエレメント1万個なら有り得る範囲だろ

443:デフォルトの名無しさん
12/02/20 21:59:35.52
DirBaseのWPF版を作っているのだが、ノードの表示があまりにも遅いので、
ツリーにいくつノードがあるのか表示前に数えて、
2000個以上あったなら、TreeViewItemのHeaderプロパティに
フォルダ名の文字列だけをいれて、2000個より少なければ、
イメージとテキストブロックを配置したしたスタックパネルを入れることで対応した。

444:デフォルトの名無しさん
12/02/20 22:27:03.45
さすがにそれは酷い・・・

まずはDataTemplateと仮想化をちゃんと使おうぜ

445:デフォルトの名無しさん
12/02/20 22:31:23.41
しかし、TreeViewの仮想化は使うとガクガクになるからなぁ

意外と>>443のやり方も正解かもしれん

446:デフォルトの名無しさん
12/02/21 13:34:54.42
DataGridのn行目を現在表示されてる範囲の最後の行に指定するにはどうしたらいいですか?

447:デフォルトの名無しさん
12/02/22 17:29:49.89
このスレってソース上げたら修正してもらえます?
うまく動かない箇所があるんですが。

448:デフォルトの名無しさん
12/02/22 17:45:11.89
突っ込みたくてたまらなくなるような刺激的なソースなら修正してもらえるだろう

449:デフォルトの名無しさん
12/02/22 19:25:25.22
URLリンク(www1.axfc.net)
要素を拡縮平行移動するテストアプリを作りました。
左ドラッグで平行移動、右ドラッグ上下で拡縮します。
拡縮はCenterX,Yを用いて中心点を設定します。
右クリック時のポインタ座標が中心点です。

このアプリだと意図したとおりに動きません。
拡縮や平行移動を繰り返していると拡縮を行うとき(右クリック時)勝手に要素が動いてしまいます。
これを勝手に動かないようにしたいです。

450:デフォルトの名無しさん
12/02/22 19:47:05.59
>>449

>>1
読もうな?

451:デフォルトの名無しさん
12/02/22 19:54:22.46
WPFに関する部分なんでこのスレがふさわしいかと思いましたが…。
では>>449は取り下げて、ふらっとC#の方で改めて質問します。

452:デフォルトの名無しさん
12/02/22 21:48:47.38
DataGrid.Columnsの中身を別XAMLに定義って無理?

453:デフォルトの名無しさん
12/02/22 23:39:37.57
DataGridごと定義しろ

454:デフォルトの名無しさん
12/02/23 08:36:07.25
>>449の質問がふらっとスレですげぇ盛り上がってた


455:デフォルトの名無しさん
12/02/23 12:23:41.06
DoubleAnimationって一時停止とかできないんですかね?
あと、たとえばウインドウの右から左にコントロールが移動する時、
ウインドウのサイズ変化に合わせて移動速度を変えたりとかしたいのですが。

456:デフォルトの名無しさん
12/02/23 13:41:10.25
一時停止出来るよ

457:デフォルトの名無しさん
12/02/23 15:02:20.94
ストーリーボードならできるよ
URLリンク(msdn.microsoft.com)

458:デフォルトの名無しさん
12/02/24 17:22:02.41
GridでもCanvasでもRectでもなんでもいいんですが、特定のエリアの上に
(Childrenではない)別のコントロールが重なっているかどうかを調べる方法はありますか?
たとえばCanvasの端にちょっとだけButtonの一部がのっかってるかどうかを調べたいのですが。

459:デフォルトの名無しさん
12/02/24 17:32:20.82
VisualTreeHelper.HitTest ?

460:デフォルトの名無しさん
12/02/25 08:43:03.21
タブコントロールのタブページを動的に作成し追加するのなら、
XAMLを使わず、コードのみでレイアウトする知識が必要だ。
コード中心の学習に方向転換をすることで、WPFの理解が深まる。
XAMLはコードの簡略表現に過ぎないことも理解できる。
幸いアメリカのサイトを検索すると、サンプルコードが簡単に
手に入る。


461:デフォルトの名無しさん
12/02/25 09:42:01.63
なんというチラ裏

462:デフォルトの名無しさん
12/02/25 12:39:13.71
コードでGUI作成って方向はアリなのか?

463:デフォルトの名無しさん
12/02/25 12:46:18.92
必要であれば

464:デフォルトの名無しさん
12/02/25 12:55:35.98
2012はやく試したいな

465:デフォルトの名無しさん
12/02/25 13:20:16.48
C#コードでDateTemplateをかけなかったりと
XAMLでできることはC#でもできるとは限らないのがイヤン

466:デフォルトの名無しさん
12/02/25 13:31:18.30
FrameworkElementFactory使えば書けるよ>コードビハインドでDataTemplete
XAMLの方が楽なのは言うまでもなく否定しない

Binding binding = new Binding();
binding.Path = new PropertyPath("Name");
binding.Mode = BindingMode.OneWay;

FrameworkElementFactory textElement = new FrameworkElementFactory(typeof(TextBlock));
textElement.SetBinding(TextBlock.TextProperty, binding);

dataTemplate.VisualTree = textElement;

467:デフォルトの名無しさん
12/02/25 14:08:41.34
VS2012tteいつ出るんだ?
win8の後?

win8は9月より後らしいけどその前に出さないかな?

468:デフォルトの名無しさん
12/02/25 14:14:17.71
29日にWin8と同時にカスタマープレビューだが
製品は分からんね

469:デフォルトの名無しさん
12/02/25 14:25:42.08
metroアプリ量産してがっぽり稼ぎたい

470:デフォルトの名無しさん
12/02/25 14:28:11.00
乗るしかない、このビッグウェーブに

471:デフォルトの名無しさん
12/02/25 15:48:14.89
末端開発者が乗り気でも、ユーザーましてやPCメーカーがついてこないとな

472:デフォルトの名無しさん
12/02/25 15:52:06.69
こんどのベータでどれぐらいWPF→METROの移植性あるか分かりそうだから
気合入れるか

473:デフォルトの名無しさん
12/02/25 15:58:22.56
小遣い程度稼げるなら頑張るよw

まあ無理だろうけどw

474:デフォルトの名無しさん
12/02/25 16:01:27.51
100円ぐらいのアプリを月に100本ダウンロードされるだけでいいんだけどなあ

475:デフォルトの名無しさん
12/02/25 20:54:42.76
>>472
ねえよそんなもん
ベタ移植できたところでそんなのタッチUIで使い物にならん

476:デフォルトの名無しさん
12/02/25 21:30:52.32
BMI計算機でも作るか

477:デフォルトの名無しさん
12/02/25 23:30:13.94
Blend5も出るんだよな?

478:デフォルトの名無しさん
12/02/26 12:52:17.64
ツール作りたいんだけどFormsに比べて難しすぎる・・・。
DockPanelも自前でがんばれって事なのか。

479:デフォルトの名無しさん
12/02/26 12:57:14.06
ちょっと聞きたいんだけど、WindowsFormsで普通に組んでて、
部分的にWPFのGUI作ってHostでForms上に表示する場合って
テーマで見た目を変えることって不可能?

480:デフォルトの名無しさん
12/02/26 23:31:09.80
普通にできるけど

481:デフォルトの名無しさん
12/02/26 23:58:47.13
UserControlだとApplyThemeないけど出来たっけ?

482:デフォルトの名無しさん
12/02/27 01:15:26.09
Style使えばいいでしょ

483:デフォルトの名無しさん
12/02/27 20:51:34.11
ストリーム上の画像を表示しようとしています
BitmapDecoder decoder = BitmapDecoder.Create(_memory, BitmapCreateOptions.PreservePixelFormat, BitmapCacheOption.OnLoad);
BitmapSource source = decoder.Frames[0];
_image.Source = source;
て感じでやろうとしてるんだけど、PNGとかGIFは表示できてるのにJPEGだけFileFormatExceptionが出て何故かデコードできない
これ分かる人いますか?

484:デフォルトの名無しさん
12/02/27 20:54:47.03
IgnoreColorProfile試してからもう一回来てくれ

485:483
12/02/28 00:41:58.89
まだ原因は分かってないけど>>483以前の問題によるもののようです
ちゃんと確かめずに書き込んですまん

486:デフォルトの名無しさん
12/02/29 20:01:00.48
共通部分のコントロール分離して整理していったら
XAMLファイルガンガン増えるんだけどそんなもん?

487:デフォルトの名無しさん
12/02/29 20:09:39.46
全部MainWindow.XAMLに詰め込んでBlendでグリグリ弄るのが流儀だと思てた

488:デフォルトの名無しさん
12/02/29 20:24:19.41
流儀が確立されるほど流行ってないとか言ったら怒られますか?

489:デフォルトの名無しさん
12/02/29 21:02:31.87
MSのサンプルもそれぞれ手法違うしな

490:デフォルトの名無しさん
12/02/29 23:15:25.35
csファイルと同じなんじゃないの

491:デフォルトの名無しさん
12/03/01 02:39:17.27
blend5きてないじゃん

492:デフォルトの名無しさん
12/03/01 03:54:53.52
コントロールが重なっていた場合、表示順位が上か下かをcsで設定するにはどうすればいいですか?

493:デフォルトの名無しさん
12/03/01 07:07:29.69
WPFでつくたアプリケーションは同じ機能のWindoes.Formsのアプリケーションと比べて、
実行時に10倍以上のメモリを食いつぶすことが判明した。
Windoes.Formsでは絶対に作れないアプリケーションでないと、
WPFでアプリケーションを作ることはコスト的に割が合わないだろう。


494:デフォルトの名無しさん
12/03/01 07:18:57.05
Visual Studio 11 はXP切り捨てか

495:デフォルトの名無しさん
12/03/01 08:24:37.79
>>492
Panel.SetZIndex

496:デフォルトの名無しさん
12/03/01 08:48:24.66
URLリンク(msdn.microsoft.com)

開発者向けダウンロード
URLリンク(msdn.microsoft.com)

497:デフォルトの名無しさん
12/03/01 09:02:15.54
2010のIDEはGDI部分多かったが今回どんなもんかな

498:デフォルトの名無しさん
12/03/01 09:06:34.46
ごく一部にアニメーションが入って
ちょっとおしゃれになってる

499:デフォルトの名無しさん
12/03/01 09:26:32.96
win8にコマンドって用語が増えた
やっぱり.netチームと仲が悪いんだな

500:デフォルトの名無しさん
12/03/01 12:24:17.23
XMLで、依存プロパティとかいうの書くのかなり長ったらしかったけど
C#5.0で短くなったりしないかな

501:デフォルトの名無しさん
12/03/01 12:32:18.61
ProでもBlend5 for Visual Studio付いてきてるぞ

502:デフォルトの名無しさん
12/03/01 22:36:26.57
WPFもせっかくVSで結構良い仕事してるんだから
VSで使われてるツリービューとかシェルとかダイアログとかのコンポーネントを提供してほしいわ
MSだけがWPF開発のノウハウ蓄えてもなあ

503:デフォルトの名無しさん
12/03/01 23:48:52.88
今回Toolkit統合なしか

504:デフォルトの名無しさん
12/03/02 09:45:54.00
System.Windows.Controls.Panelを継承した自前クラスを用意して
そこに対してDirectXでのレンダリングを行いたいです。

System.Windows.Interop.HwndSource.FromVisual(this)
ってやるとこのコントロールを貼り付けた親のウィンドウハンドルになってしまうのだけど
このコントロール自身のハンドルってWPFじゃ取得不可能?

505:デフォルトの名無しさん
12/03/02 10:04:40.36
WPFのコントロールにハンドルは無い
Direct3D使いたいんだったらD3DImageというものがあるので第一に検討する
どうしてもハンドル取ってWindowsのコントロールに直接描画したいならWindowsFormsHost

506:デフォルトの名無しさん
12/03/02 12:04:11.68
VS2010でWin8のスタートに表示するタイル作る方法ある?

507:デフォルトの名無しさん
12/03/02 12:18:25.84
多分インストール時にプログラムメニューに入れれば追加されるんじゃないかな
古いアプリも追加されてるし
ちなみにVS11でMetroアプリの場合はサンプルをビルドするだけで追加されたちょっとうざい

508:デフォルトの名無しさん
12/03/02 12:24:04.79
>>507
アイコンは表示されるけど、自分でデザインしたタイルを表示させたい場合はどうすればいいんだろ?

509:デフォルトの名無しさん
12/03/02 13:07:18.20
win8 SDK使えばいい
VS11必須だろうけど

510:デフォルトの名無しさん
12/03/02 14:41:36.41
>>509
VS2010 だとだめか・・・ありがとです。

511:デフォルトの名無しさん
12/03/02 18:26:12.13
XAMLはじまったな(やっと)
URLリンク(www.charlespetzold.com)

512:デフォルトの名無しさん
12/03/02 19:06:01.78
WPFは・・・

513:デフォルトの名無しさん
12/03/02 19:45:05.11
何で同じアセンブリじゃXmlnsDefinition使えないんだ

514:デフォルトの名無しさん
12/03/02 22:43:49.57
winrtは同じxamlだろっていじりはじめるとひどい目に遭う
1)名前空間が違う
2)非同期処理じゃないと許さないよ

515:デフォルトの名無しさん
12/03/02 22:53:19.58
名前空間はウザイけど非同期はどうでもいいや
どうせVS2010ではやらないし

516:デフォルトの名無しさん
12/03/02 23:00:19.07
.NET4.5系の非同期はasync使うんだぞ
ジェネリックやLINQどころではなくたぶん今までのC#の歴史の中で最もインパクトの大きい変化

517:デフォルトの名無しさん
12/03/03 09:21:13.96
xamlって名前空間分けた自前クラス使うと宣言面倒なんだけど
どうやるのが推奨なの?

518:デフォルトの名無しさん
12/03/03 09:41:11.73
先頭でエイリアスを指定する

519:デフォルトの名無しさん
12/03/03 10:06:39.44
ListBoxItemを取得しようとしてて以下でitemがnullになるんだけど何が悪いんだろうか
ListBox box = new ListBox();
int index = box.Items.Add("0");
ListBoxItem item = (ListBoxItem)box.ItemContainerGenerator.ContainerFromIndex(index);

520:デフォルトの名無しさん
12/03/03 10:38:19.67
まだ生成されてないから
Visual要素だから実際に表示されるまで生成されないです

521:デフォルトの名無しさん
12/03/03 10:40:27.43
生成されたときに何かしたいんならItemContainerGeneratorを実装する

522:デフォルトの名無しさん
12/03/03 10:48:19.56
>>520,521
なるほど、サンクス!

523:517
12/03/03 11:45:59.20
>>518
こんな感じでズラズラ書くしかないのか
xmlns:a="clr-namespace:Company.Util"
xmlns:a="clr-namespace:Company.Util.Math"
xmlns:a="clr-namespace:Company.Views"
xmlns:a="clr-namespace:Company.Views.Foo"

524:517
12/03/03 11:46:48.55
訂正
xmlns:u="clr-namespace:Company.Util"
xmlns:um="clr-namespace:Company.Util.Math"
xmlns:v="clr-namespace:Company.Views"
xmlns:vf="clr-namespace:Company.Views.Foo"

525:デフォルトの名無しさん
12/03/03 11:50:12.45
もう面倒だから全部フラットなネームスペースに入れてしまえ。

526:デフォルトの名無しさん
12/03/03 12:00:38.05
Blend的にディレクトリ分けても名前空間分けないのが推奨だと思う

527:デフォルトの名無しさん
12/03/03 12:18:01.35
先頭じゃないとこで書いたら名前空間追加する?くらいのリファクタリングしてくれればいいのに。

528:デフォルトの名無しさん
12/03/03 12:29:19.75
Blendなら勝手にやってくれるしXAMLも見ないから気にしない

529:デフォルトの名無しさん
12/03/03 12:42:17.35
ズラズラ書くズラ

530:デフォルトの名無しさん
12/03/03 12:54:39.19
ズ、ズ、ズ、ズラちゃうわ

531:デフォルトの名無しさん
12/03/03 13:42:38.23
Views, Models, ViewModelsだけは
作ってるMVVMサンプル多いからそこからフラットにしてるな

532:デフォルトの名無しさん
12/03/03 14:43:24.34
Blend無しでWPFやるのは無駄
Blendで名前空間分けるの無駄

533:デフォルトの名無しさん
12/03/03 16:11:08.46
metroアプリ作ってるけどWPFより難しいなw
新しい概念が増えすぎ
真面目に作りこんだら1.5倍ぐらい時間がかかるなこれ

534:デフォルトの名無しさん
12/03/03 18:55:59.99
Blend使ってない奴多いんだな

535:デフォルトの名無しさん
12/03/03 19:09:37.11
URLリンク(www.microsoft.com)
この宣伝文句で買う奴がいる方が不思議

536:デフォルトの名無しさん
12/03/03 19:19:30.06
Blend2は激安だったのに値上げしすぎだろ
2万で買えれば未だ普及するだろうが

537:デフォルトの名無しさん
12/03/03 19:21:34.23
テンプレートをリソースに書き出す時に
VSとblendじゃ書き出す内容が違うから困る

538:デフォルトの名無しさん
12/03/03 19:23:37.75
Blend使うんならVSのデザイナは一切使わないようにするだろ
ときどきおかしくなる


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