WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part14at TECH
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part14 - 暇つぶし2ch1:デフォルトの名無しさん
12/10/27 16:18:16.91
ユーザーインターフェースシステム、Windows Presentation Frameworkについて細々と語るスレ。

Visual Studio 2012 & 2010
URLリンク(www.microsoft.com)
Microsoft .NET Framework 4 (Web インストーラー)
URLリンク(www.microsoft.com)
Microsoft .NET Framework 4 (スタンドアロンインストーラー)
URLリンク(www.microsoft.com)
Microsoft .NET Framework 4.5
URLリンク(msdn.microsoft.com)

前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part13
スレリンク(tech板)

関連スレ
Microsoft Silverlight その9
スレリンク(tech板)

コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
URLリンク(ideone.com)

2:デフォルトの名無しさん
12/10/27 16:19:15.15
Part12 スレリンク(tech板)
Part11 スレリンク(tech板)
Part10 スレリンク(tech板)
Part9 スレリンク(tech板)
Part8 スレリンク(tech板)
Part7 スレリンク(tech板)
Part6 スレリンク(tech板)
Part5 スレリンク(tech板)
Part4 スレリンク(tech板)
Part3 スレリンク(tech板)
Part2 スレリンク(tech板)
Part1 スレリンク(tech板)

3:片山博文MZボット ◆0lBZNi.Q7evd
12/10/27 16:33:25.73
>>1-2乙。

4:デフォルトの名無しさん
12/10/27 16:34:52.77
片山ってWPFもやってんのかよ
手広いな

5:デフォルトの名無しさん
12/10/27 16:44:38.69
スレ立て乙

6:デフォルトの名無しさん
12/10/28 10:22:10.26
Windows8, VS2012で作成したWPFアプリケーションはXPでも動きますか?

7:デフォルトの名無しさん
12/10/28 11:23:06.63
1乙
前スレ落ちたの?


8:デフォルトの名無しさん
12/10/28 11:25:00.88
980越えて全然レス無いから落ちたよ

9:デフォルトの名無しさん
12/10/28 11:41:11.27
そうなんだ、ネタが無いね。
WindowsRTとか8とか出てきたけどWPFの未来はいかに

10:デフォルトの名無しさん
12/10/28 12:36:15.23
.NET4.5の新機能(WPF関係)
URLリンク(msdn.microsoft.com)

普通に強化されて後は今まで通りで、これといってネタがないからなぁ

11:デフォルトの名無しさん
12/10/28 12:49:05.24
>出荷係クラスの新しい方法

w

12:デフォルトの名無しさん
12/10/28 12:52:28.28
>WPF は Ribbon の 4.5 隻の出荷制御します。
なにを言ってるか分からない

13:デフォルトの名無しさん
12/10/28 12:53:06.04
わろた

14:デフォルトの名無しさん
12/10/28 13:00:11.53
機械翻訳ネタかよw

15:デフォルトの名無しさん
12/10/28 13:06:53.93
しかし話題ないな

16:デフォルトの名無しさん
12/10/28 13:48:54.58
ボタンのコンテントにスタックパネルを入れて、
ラベルと子ボタンがあるようなコントロールテンプレートを含む
スタイルをリソースで定義して、コードでButtonオブジェクトを
生成してからStyleプロパティにいれても、
Styleプロパティに入れた段階ではContentの中身は空な様です。
親ボタンのClickイベントと子ボタンのクリックイベントに個別の
イベントを割り当てたいのですが、子供のボタンにイベントを
割り当てる為にインスタンスを取得できるタイミングが
良くわかりません。良い方法はあるでしょうか?



17:デフォルトの名無しさん
12/10/28 15:07:15.16
やったことないから知らないけど、動的だから論理ツリー内には居ないだろうし、
ビジュアルツリーはOnRender後じゃないと探せないんじゃないの?

18:デフォルトの名無しさん
12/10/28 15:45:24.51
>17
ありがとうございます。
ボタンの中の子ボタン自体はUIElementなので論理ツリーに
いると思ってるんですが、テンプレートで動的に生成された場合に
違うことはあるでしょうか?
今のところオブジェクトのStyleやTemplateプロパティに
入力すると.NETが全て上手くやってくれるくらいの認識しか
無いのですが、論理/ビジュアルツリー関係をもう少し
勉強してみます。

19:デフォルトの名無しさん
12/10/31 12:11:57.08
非同期での処理について質問があります。

ボタンをクリックするとexeもしくはbatを起動します。
起動前にボタンのisenabledをfalseにして
実行中になんども実行されないようにします。
ModelにCanExecuteというプロパティを用意し
バインドして実現しています。

ここまではよいのですが、exeが終了したら
CanExecuteをtrueにしてボタンをクリック可能に戻したいです。
ProcessクラスのWaiteForObjectを使えばできそうなのですが
画面が固まってしまいます。

画面を固めないで実現する方法はありませんでしょうか

20:デフォルトの名無しさん
12/10/31 12:47:16.95
知らんけどWaitForExit?は今のスレッド実行をブロックするメソッドなんだから、
UIスレッド以外で実行すればいいんじゃないの

21:デフォルトの名無しさん
12/10/31 13:24:04.67
>>20
メソッド名はWaitForExitです
UIスレッド以外で実行したいのですが
その実行が終わったらCanExecuteを変更しなければいけないため
結局は待ち合わせをしないといけなくはないのでしょうか?
非同期処理があまりわかっていないのかもしれないですが・・・

22:デフォルトの名無しさん
12/10/31 13:27:27.89
ggrksってことだ

23:デフォルトの名無しさん
12/10/31 13:28:14.80
>19
それ非同期じゃなくて同期って言わない?

24:デフォルトの名無しさん
12/10/31 14:47:04.05
async void button_Click() {
model.CanExecute = false;
await Task.Run(() => { /*別スレッド*/ 別プロセスを起動してWaitForExit(); });
model.CanExecute = true;
}
同期処理のように見えるのにUIが固まらない黒魔術

25:デフォルトの名無しさん
12/10/31 17:01:23.85
>>24
回答ありがとうございます。
教えていただいたように実装してみたのですが
エラーになってしまいました。
調べてみたところ、.NET4.5でないとだめのようでした。
現在のバージョンは4しか使えない状態です。
>>24のような処理を.NET4で実装するにはほかに方法はないでしょうか


26:デフォルトの名無しさん
12/10/31 18:36:20.63
アホなの?Taskクラスを教えて貰ったんだし調べればいいのに。
Task.Factory.StartNew() にCanExecuteも含めて全部ブチ込めばいいだけじゃね

27:デフォルトの名無しさん
12/10/31 18:36:40.62
Task.Factory.StartNew(() =>
{
(いろんな処理)
model.CanExecute = true;
});

じゃダメなの?
待ち合わせじゃなくて別スレッド内で
その最後にやらせる形だけど。

28:デフォルトの名無しさん
12/10/31 18:37:09.96
書いてるうちにかぶったw すまん

29:デフォルトの名無しさん
12/10/31 21:59:17.47
モデルがあるんだったらそういう処理や状態管理はモデルに投げるべきじゃね?
何のためのモデルだよ

30:デフォルトの名無しさん
12/10/31 22:11:30.00
model.CanExecute = false; 処理; model.CanExecute = true;
こういうのをビューに書いちゃうのはモデルを単なるデータの入れ物と勘違いしてる典型だろ
void button_Click() { model.処理開始(() => { 処理完了時の処理;/*イベントでも可*/ }); }
って感じにするのが妥当
CanExecuteはモデル自身が管理するべき
モデルと言ってもこの場合VMに近いけど

31:デフォルトの名無しさん
12/10/31 22:53:13.79
一体誰がMVVM的にどうの聞いてんだよw

32:デフォルトの名無しさん
12/10/31 23:15:44.69
質問の趣旨も理解せずに主義を語るのが病気持ちプログラマの特徴

33:デフォルトの名無しさん
12/11/02 10:59:04.64
>>26
>>27
無理
別スレッドからUI弄れないことも知らないの?

>>30
そんな実装クソだろ
void Execute()
{
this.CanExecute = false;
Task.Factory.StartNew(()=>{ /* 何か */ })
.ContinueWith(_=>this.CanExecute = true, UIで実行するためのTaskSchedule);
}
んでExecuteとCanExecuteをバインド


34:デフォルトの名無しさん
12/11/02 11:08:27.55
無理じゃねーだろ。CanExecuteはUIを直弄ってねーだろ。怒られるかやってみろよw

35:デフォルトの名無しさん
12/11/02 11:08:46.67
またアホなのが湧いてきたなw

36:デフォルトの名無しさん
12/11/02 11:35:04.78
>>34
ボタンにバインドしてるだろ?
怒られるからやってみろよw

37:デフォルトの名無しさん
12/11/02 11:37:10.07
>>34
Taskの処理が終わるまでCanExecute=trueが有効になんねーだろうな
どちらにしろCWメソッド呼ばないと無理じゃね?

38:デフォルトの名無しさん
12/11/02 11:47:29.28
>>36
まずお前がやれよ。直ぐだろw やってみたのか?

39:デフォルトの名無しさん
12/11/02 12:00:17.40
>>38
やってみたけどエラーにはならないが
処理前に非活性にならないね。
Taskだから?

40:デフォルトの名無しさん
12/11/02 12:17:14.18
>>39
言った手前やってみたけど、意図した動作になったけどなぁ。
無いとは思うが、INotifyPropertyChanged を実装してないってオチは…

41:デフォルトの名無しさん
12/11/02 21:34:48.31
>>40
実装してるんだけどね。
まぁ4なんてもう使わないからどうでもいいや。

42:デフォルトの名無しさん
12/11/03 21:57:40.01
VS2012を触ってみたら、デバッガでWPFビジュアライザなるものが出てきた
なにこれ便利

43:デフォルトの名無しさん
12/11/03 22:49:54.28
なぜXAMLは普及しないのか?

44:デフォルトの名無しさん
12/11/03 23:08:17.54
過去を捨てるほどメリットを提示できない故に

45:デフォルトの名無しさん
12/11/03 23:10:37.87
デザイン性が求められる分野はWebに行っちゃったしな
WinでもストアアプリはHTML5が主流になりそうな感じだし

46:デフォルトの名無しさん
12/11/03 23:20:29.60
とにかく無駄が多くてMSらしいと言えばらしいなw…って印象しかない

47:デフォルトの名無しさん
12/11/03 23:35:08.68
みんなコードは書きたいけど無駄に冗長なコードは書きたくないのです

MSの中の人は理解してない

48:デフォルトの名無しさん
12/11/03 23:39:23.68
>>47
逆だよ
みんな美しい理想の設計なんて求めていないのです
無駄な冗長な長いコードでも頭使わずに書けたらそれでいいんです
MSの中の人は理解してない

49:デフォルトの名無しさん
12/11/03 23:47:24.85
あれを美しいと感じる美観も勘弁して欲しい

50:デフォルトの名無しさん
12/11/03 23:51:59.63
そうでもないよ。基本的な設計は非常に筋がいい。
Androidとか今のJavaFXとかWPFの丸パクリだよ

51:デフォルトの名無しさん
12/11/04 06:38:22.55
>>43
WPFもSilverlightも出来上がったアプリ重くない?特にWPF、起動が劇遅。
XAMLのせいなのかは知らないけど。

52:デフォルトの名無しさん
12/11/04 07:40:24.84
書き方によるんじゃ無いかな?
自分は、最初WPF使ってとんでもなく遅くて後悔したけど、
できるだけ初期画面でインスタンス化されるコントロール減らしたり
デリゲートとかの非同期、マルチキャスト機能とか活用して
起動時のIO処理を見直すようにしたら、割と普通のソフトと変わらないんじゃね?
位の重さにはなった気がする。
そんなにデカイ規模のプログラムじゃ無いけど。

あと、コンパイルが掛かる、インストール後の本当の初期起動は
HDDの実行環境だとそれなりに重いかも


53:デフォルトの名無しさん
12/11/04 11:42:54.62
日本語のサンプルや解説がなさすぎる、MVVMを思想とか仕様じゃなくてわかりやすくサンプル載せてるサイトが日本に一つにもない、そんだけ使われてないってことじゃん。
そもそもBlendありきってのが一番わけわからん、VSで簡単にViewModel作れないんじゃみんなFormでいいじゃんってなるでしょ・・・。
だからMVVMをわかりやすく解説してるサンプル豊富なサイト教えてくださいm(_ _)m

54:デフォルトの名無しさん
12/11/04 13:36:04.65
かずきのところまとめ読みしてわからないならあきらめたほうがいい

55:デフォルトの名無しさん
12/11/04 13:38:36.00
あれMVVMのアーキについて語ってるわけじゃないだろ
どちらかと言えばどうやって使うかお部分だ
聞きたいのはそこじゃない

56:デフォルトの名無しさん
12/11/04 13:41:59.27
あきらめろん

57:デフォルトの名無しさん
12/11/04 22:28:12.90
>>55
MVVM のアーキテクチャって具体的に何が知りたいの?
UI とドメインのアンマッチを VM で吸収するってだけだよ。
それをどう実現するかってのは .NET でよければかずきって奴のブログ見ればいい。

58:デフォルトの名無しさん
12/11/04 22:33:05.91
うごやのサイトは見ない方がいい。
かなり宗教的で非現実的で自慰的。
自分も最近自覚してきたのか、言ってることがぶれまくってる。

59:デフォルトの名無しさん
12/11/05 00:58:58.91
かずきblog順を追って読んでいけばいい
学習しながら進んでったのがよくわかる

javaをやってたみたいで趣味グラマー中心の.net開発者より視野が若干広い
流行りものも積極的に勉強してるみたいだし

60:デフォルトの名無しさん
12/11/05 01:07:49.15
いや.NETのTipsとか書いてるのってみんな思いっきりドカタだろw

61:デフォルトの名無しさん
12/11/05 01:22:07.69
そのドカタより技術あるならてめぇが書けよカスwww
日本人って技術あるやつほど人に教えねーんだよな
日本のソフトウェアが糞なのは先人の残したそびえたつ糞のおかげですね^^

62:デフォルトの名無しさん
12/11/05 02:44:59.68
WPFはソフト開発の生産性がいいと思えない。
表現力はあるが、やってる中身は定型的でおもしろみがない。
Windows8のソフト開発はHTML5とJavascriptが主流になるだろう。

63:デフォルトの名無しさん
12/11/05 02:57:48.90
何やらドカタの琴線に触れたらしい
これだから嫌だねえ日本のIT業界って
スミからスミまで根暗卑屈

64:デフォルトの名無しさん
12/11/05 03:32:10.19
>>62
UI フレームワークなんてのは、昔から、面白味をなくしてドカタにでもできるようなものを目標にしている。
そういうつまらない仕事はWebデザイナみたいな一山いくらの連中に任せて、プログラマはもっと建設的な仕事をしろってことさ。
HTML5ベースになるとしたら、HTML5ベースのツールが流行ったというだけのこと。

65:デフォルトの名無しさん
12/11/05 03:42:09.60
wpfというかMVVMはなんかだるい。例えば、ちょっとなにか試そうってとき、
実際に使うときはMVVMなんだから、その流儀でやろうとするとコードビハインド比で
ちょっと時間食う。

66:デフォルトの名無しさん
12/11/05 09:05:16.06
>>65
まぁ、そういう間違った風潮、認識が蔓延ったのはすべて尾上が諸悪の根源だろうな
尾上ってMVVMの俺俺うんちくを垂れることしか能がないというか
.NET Frameworkや言語(C#)に対する知識はかなり低い
++C++やneueに嫉妬メラメラだし

別にWPFだからと言ってMVVMでやんなきゃいけないわけではないし
WinFormsと同じようにコードビハインドで組んでUIの表現だけ恩恵を受けるのだってぜんぜん間違いじゃない
MVVMでやるとしてもコードビハインドを使っちゃだめというわけじゃない
コードビハインドは本当によくできた概念
無理に排除してもいいことない

MSも標準でメッセンジャーやイベントバインディングを用意しないと未来はないよな




67:デフォルトの名無しさん
12/11/05 10:05:31.88
まーたはじまった

68:デフォルトの名無しさん
12/11/05 11:55:57.32
土方が余計なこと考えなくても開発できるようにするためIDEがあんだろ
IDEが標準サポートしてないなら必須技術じゃないだろ

69:デフォルトの名無しさん
12/11/05 16:00:02.83
高野将ってうがやに何か弱みでも握られてるの?
へこへこびくびくしながら下僕ツイート垂れ流して何が楽しいの?
うがやも馬鹿にしてるのみえみえだし。
うがやの周りは変な奴多いよな。
技術に傾倒しすぎる奴らって本当に基地外しかいない。

70:デフォルトの名無しさん
12/11/05 16:17:34.87
自己紹介乙

71:デフォルトの名無しさん
12/11/05 16:21:12.92
>>70
おまえ、わかりやすいなwww

72:デフォルトの名無しさん
12/11/05 16:29:49.47
ここ定期的に私怨臭い流れになるな
隔離スレ作っても残るし

73:デフォルトの名無しさん
12/11/05 16:50:50.35
>>72
私怨というか、うがやが広めたMVVMに対する偏見は日本のMVVMを10年遅らせただろ?
まぁ10年はいいすぎだがw
しょぼくさいクラスライブラリを作っただけで図に乗りすぎたんだよ。


74:デフォルトの名無しさん
12/11/05 19:25:31.24
Livetがしょぼいのは同意だな
わざわざ理解するほどの価値は無いと思う
やっぱりMVVMは変なライブラリ使わないでコードビハインドを併用しながら
無理なくやれる範囲で適用するのが今のところはベスト

75:デフォルトの名無しさん
12/11/05 22:47:21.06
livetのページ404なんだけど

76:デフォルトの名無しさん
12/11/05 22:48:15.79
罵倒されてショック受けたんじゃねえの

77:デフォルトの名無しさん
12/11/05 23:35:11.49
>>74
>コードビハインドを併用しながら
>無理なくやれる範囲で適用するのが今のところはベスト
ここは激しく同意だわ
MVVMを正しく理解してない奴はクソ!文句垂れるな!
みたいな論調を垂れ流し続ける限りダメだ
その「正しく」ってのもugayaのオレ様理論だしw

>>69
ぐらばくって奴も完全な口だけ媚び下僕
いつもLivetまんせー的なこと言っておきながら
WeakReference<T>の存在、今日初めて知ってるしw
使ってないのバレバレじゃんかw

78:デフォルトの名無しさん
12/11/06 02:25:18.42
>>77
かわいそうなことしてやるなよ・・・
ああいうタイプの子は突っ込まれると
そんなこと気にしてないよ、と言わんばかりに
さらにドツボにはまることを言い出すんだよ・・・
2chなんか見てないよと言いたいんだろうね
「一方私はLivet.dllをmogmog」とか無理しちゃって・・・
ぐらばくちゃん惨めだね・・・

だせっw

79:デフォルトの名無しさん
12/11/06 10:44:15.78
u氏、私怨はないけど、モデルって言葉を都合良く使いすぎた所は悪影響があったと思う

80:デフォルトの名無しさん
12/11/06 10:52:11.88
ugaya40叩くだけに飽き足らず、その周辺まで叩きだしたか・・・

MVVMの採用はシーンによって導入の可否を判断すべきで
MVVMなきゃ絶対ダメってのも言い過ぎだが
MVVM絶対イラネーっていうおまいらも同類だと思うぞ

81:デフォルトの名無しさん
12/11/06 10:53:15.08
全員よそで頼む

82:80
12/11/06 10:57:45.55
モデルという言葉は視点によって意味が変わると思うぞ
MVVMとMVCでは問題領域が変わるので、「モデル」という言葉の意味が変わるのも当然

つか、これ以上突っ込んだ話はWPFから外れるから、俺がせっかく立ててやったMVVMスレでやれや
スレリンク(tech板)

83:デフォルトの名無しさん
12/11/06 11:20:50.38
WPFから外れるから

84:デフォルトの名無しさん
12/11/06 15:03:24.23
>>82
視点によって変わる単語を俺様理論で展開してきたことが問題なんじゃね?
そもそもMVVM自体ugayaが考えたパターンじゃないのに
俺の思考がすべて正しい、ような論調で他人を否定し続けてきたくせに
いきなり真逆のこと言い出したのも問題だろうて。
コードビハインドの利用やモデルの責務あたりの件な。

85:80
12/11/06 15:17:20.42
>>84
スレリンク(tech板:396番)

86:デフォルトの名無しさん
12/11/06 16:59:26.20
全部コマンドでやれれば、コードビハインドで書かなくて済むんだよ

87:デフォルトの名無しさん
12/11/06 17:28:45.47
例えばコマンドでフォーカス当てるとかってどうやってる?
メッセンジャーしかないと思うんだけど、なんてダルイんだ。
もうVの参照貰って、落ちないように直じゃなくて参照あるときに探すようにして当てる、で
いい気がするんだけど・・

88:デフォルトの名無しさん
12/11/06 18:14:51.09
>>87
> Vの参照貰って、落ちないように直じゃなくて参照あるときに探すようにして当てる、でいい気がするんだけど・・

それでいいんじゃね?俺もMVVM派だけど、そういう場合Vの参照VMに悩まず渡してる

89:デフォルトの名無しさん
12/11/06 19:15:21.50
俺様の言っていることが全て、違うこと言っている人間には喧嘩を売っていくという態度のせいで、
氏の発言を劣化コピーした、あるいみ自明な事をドヤ顔で言うような輩が出てくる一方で、
絡まれるのが面倒だからか、彼よりアプリケーションモデル・ドメインモデル・アプリケーションアーキテクチャに
知識も経験もあるであろう人達の発言が聞こえなくなったという弊害。

90:デフォルトの名無しさん
12/11/06 19:54:01.58
こんなマイナー技術好きにやったらいい

91:デフォルトの名無しさん
12/11/06 19:55:44.72
どこまでいってもMSプラットフォーム支配下という制限付きだからね。

92:デフォルトの名無しさん
12/11/06 19:57:30.75
windowsって結局MS-DOSを統合しただけだったな

93:デフォルトの名無しさん
12/11/06 20:04:30.33
        ____
        /     \
     /   ⌒  ⌒ \   何言ってんだこいつ
   /    (●)  (●) \
    |   、" ゙)(__人__)"  )    ___________
   \      。` ⌒゚:j´ ,/ j゙~~| | |             |
__/          \  |__| | |             |
| | /   ,              \n||  | |             |
| | /   /         r.  ( こ) | |             |
| | | ⌒ ーnnn        |\ (⊆ソ .|_|___________|
 ̄ \__、("二) ̄ ̄ ̄ ̄ ̄l二二l二二  _|_|__|_

94:デフォルトの名無しさん
12/11/06 20:06:18.70
ちょっとむずかしかったかな?

95:デフォルトの名無しさん
12/11/06 20:16:03.05
MVVMスレでやれ

MVVMについて語ろう
スレリンク(tech板)

96:デフォルトの名無しさん
12/11/06 21:14:47.90
雁屋哲レベルの知性の持ち主がいるな

97:デフォルトの名無しさん
12/11/07 00:48:14.02
VMの扱いがわかりにくすぎるし面倒すぎる
JavaFX2触ってるときと同じでイライラしてくるわ

98:デフォルトの名無しさん
12/11/07 00:51:46.40
コードビハインドでパネルのDataContextにモデルのインスタンスを代入して
その上のコントロールとモデルのプロパティをXAMLでバインドしろ。
VMなんか要らん。それがWPF本来の正しい使い方だ。

99:デフォルトの名無しさん
12/11/07 01:20:27.08
Vの仕事を奪うようなVMはMVVMじゃないと思うの

DataGridでソートボタン押されたら、押されたイベントをVMに送って
VMでソートしてそれをバインドで反映とか面倒臭くてやってられんぞ

100:デフォルトの名無しさん
12/11/07 02:14:44.12
うるせーんだよ
カスどものVM論なんて聞き飽きたわ
引っ込んでろ

101:デフォルトの名無しさん
12/11/07 05:53:01.87
>>99

CollectionViewSource.SortDescriptions

102:デフォルトの名無しさん
12/11/08 01:50:29.98
>>89
まさにそれだな。
尾上に絡まれるのが嫌だからという理由でMVVMを論じる人が全く居なくなった。
おかげでja-JPのMVVMは間違った方向を向いたまま停滞しまくり。
まだそれが正論であればマシだったんだが、完全に歪んだ俺様理論だったってのが最悪。
マジで死ねばいいのにと思ってる人たくさんいるだろう。

103:デフォルトの名無しさん
12/11/08 11:35:16.86
WindowsFormsHostのIsRedirectedはどうしたら使えるの?
環境はWindows 7+Visual Studio 2012

104:デフォルトの名無しさん
12/11/08 11:46:04.52
>>102
パターン界の小林よしのりかよwww

105:デフォルトの名無しさん
12/11/08 11:58:11.72
>>103
やっぱやめたってconnectにあがってた

106:103
12/11/08 12:48:46.62
>>105
そうだったんですか、どうも有難うございます。

107:デフォルトの名無しさん
12/11/08 19:03:32.16
なんか結局MVVMって自己満足みたいね。
画面定義とロジックは分けましょう→コードビハインド
みたいに開発環境・言語の中に組み込んで
意識せずに自然とMVVMになるようにしないと駄目だね。

108:デフォルトの名無しさん
12/11/08 21:58:46.66
面倒な技術はたとえ便利でも全部ジコマン。

VとVMの名前を合わせとけばあとは全部勝手にやってくれるくらいにならないと、絶対流行らない。

109:デフォルトの名無しさん
12/11/08 22:13:14.06
かずきのサイト見てMVVMので一番めんどい系のTriggerとActionとMessengerはなんとなくわかった
ただCommand、おめぇはわかんねぇ・・・
・Trigger = Viewに対するなんらかのイベント
・Action = Triggerから呼ばれてVMのメソッドを呼び出す
・Messenger = VMからViewへ指示

だいたいこんな感じだよな?
Commandってなんのためにあんの?しかもすげぇイミフでわけわかんない記述だし・・・

110:デフォルトの名無しさん
12/11/08 22:28:41.59
なんの為とか言われてもなぁ…。実行可否も持てるわけだから、
複数個所で同一の処理する場合に、状態も含めて一元化できる・・とか?
メニューとボタンとかで。XAML的にもトリガーアクションよりは簡潔だし。

イミフってのは多分RelayCommandかDelegateCommandのことなんだろうが、
あれの実装は気にしなくていいと思う。ただ使えばいい。
でもコマンドが何者かすら勉強してなさそうだから、それもできなそうだが。

あとActionはVMとは限らんけどな。それもできるけど。

111:デフォルトの名無しさん
12/11/08 22:32:12.06
CommandはCallMethodActionと一緒だよ。単にVMに定義されたパブリックメソッドと考えていい。
Vとバインドしやすいように特殊な形で公開しているだけ。
Commandの方がCallMethodActionよりもXAMLが簡潔に書けるが
VMのインターフェイスが汚れる。完全に好みの問題なので一方だけ好きな方を使えばいい。
CommandはCanExecuteでコントロールを無効にできたりするが、IsEnabledと
VMのプロパティをバインドしたほうが簡単で綺麗なので使う必要はない。

112:デフォルトの名無しさん
12/11/08 23:33:51.98
CommandってF12押しても参照飛ばないからなー

113:デフォルトの名無しさん
12/11/08 23:36:17.05
一つ一つのクラスとしてコマンドを実装して拡張性を持たせるような設計なら
CanExecuteは役立つのかもしれないけど、少なくともDelegateCommandに
CanExecuteは要らん

114:デフォルトの名無しさん
12/11/09 06:49:52.32
信号が青に変わったら、アクセル踏め

(Command)
何らかの「進行許可」があったら「前進」しろ

進行許可の内容は、信号でも、警官の指示でも何でもいい
とにかく進めというサインが出たら行動しろ

前進の仕方も、車ならアクセル踏め、自転車ならペダルこげ、
徒歩なら歩け、その他何でも内容は問わない
とにかく前へ進め

かなりテキトーな比喩でいうと、こんな感じかな

「進行許可」が常に信号が青になる場合だけで
「前進」も常にアクセル踏むだけの1対1の組み合わせしかないなら、
冗長になるだけであまり意味はないけど

115:デフォルトの名無しさん
12/11/09 07:01:45.14
最近の若いもんはON_COMMAND/ON_UPDATE_COMMAND_UIやDelphiのActionListを知らんからの~。
まあ、今時の若ものはCallMethodActionやVM直接バインドで良いと思う。

116:デフォルトの名無しさん
12/11/09 12:49:03.96
尾上のサイト読んだら、標準ライブラリだけだと
>DelegateCommand/RelayCommand、Messengerやビヘイビア・トリガー・アクションという用語は全て無視してください。
これらをゼロから実装するにはMVVMパターンの概念・目的・各種MVVMライブラリの実装・WeakEventパターンに精通している必要があります。
標準ライブラリだけでMVVMパターンを実現しようとしたら、これらの物は含まれていないのです。無理に実現しようとしてもコストが割に合いません。

117:デフォルトの名無しさん
12/11/09 12:52:26.99
っつーことはPrism/Livetがない環境だと、そもそもMVVMで設計・実装することが間違いって話になるんよな
M$は本当にWPFにおいてMVVMを推奨してるん?VS2012でも相変わらずみたいだし、M$的にMVVMってなんなの?

118:デフォルトの名無しさん
12/11/09 13:04:24.63
MVVMという言葉だけが先走りすぎて
WPF自体が新参に敬遠されてしまっている
どこのサンプルもWinFormの頃のようなコーディングをしているのに
実際そのほうが作るのが早くてわかりやすい
ノートを写すのに綺麗に書くか、わかれば良い程度で書くかと一緒

119:デフォルトの名無しさん
12/11/09 13:10:43.53
確かに。会社でしかやらないような連中に教えるのは困難。
なんでこんなことしなきゃならんの?って思うわな普通。コードビハインド極力禁止ってw
Vとの結合弱くしてんでどこで使うのソレ・・的な。

120:デフォルトの名無しさん
12/11/09 13:29:22.43
話を纏めると

「WPFおもしろそう!今度のプロジェクトはこれにしよう!」

「WPFにはMVVMというパターンが必要なのか・・・」

「MVVMはかなり複雑なパターンのようだし、うちのPGで理解できる奴いねーな」

「納期短いからやはりFormsにしよう!」

という流れが多そうだな

121:デフォルトの名無しさん
12/11/09 15:24:34.04
土方には一生Forms使わせておけば良いんでは。

コードビハインド禁止だとかの冗談はともかく、
WPF(XAML)使うんだったらVM作ってバインディングした方がよほど簡単じゃね?
単純にプレゼンテーションモデルを作るだけではすまない所はコード書けば良いし。

122:デフォルトの名無しさん
12/11/09 16:14:40.54
別にコードビハインドでもバインディングできるし
VM作ったほうが簡単ってことはない

123:デフォルトの名無しさん
12/11/09 16:31:53.16
うん
コードビハインドでモデルをDataContextに突っ込んだ方が簡単
VMが欲しくなるほど複雑な状態管理が必要なビューなんてそう無い

124:デフォルトの名無しさん
12/11/09 17:09:40.46
DataContextってビューのルートだけ設定して終わりじゃなくて、
たとえばあるモデルに関連したグループボックスがあったら
そのグループボックスのDataContextにはそのモデルを入れて、
グループボックスの子のコントロールをバインドするという風に使うもんなんだが
最初からWPF開発=MVVM開発と刷り込まれて学習したような連中は
その辺の考え方をよく分かってなさそうだな

125:デフォルトの名無しさん
12/11/09 17:46:47.65
中途半端なVM作るぐらいならコードビハインドに書いたほうがいいな
一番良くないのはVMで実現が難しいのでコードビハインドも使ったりすること
VMの役割が曖昧になってしまって可読性が落ちる
だったらビューとモデルだけにすればいい。これでもWinFormよりはシンプルに書ける

126:デフォルトの名無しさん
12/11/09 19:26:09.90
>WPF開発=MVVM開発

これをWPFの本質のように主張してくる奴がウザイ
殺害したい

127:デフォルトの名無しさん
12/11/09 23:58:17.53
windowsformからwpfに移行しようと思うんだけど、いまいちやる気がでない
何か、windowsformではできなかったけど、wpfだとこんなことができる。みたいなことってありますか?

128:デフォルトの名無しさん
12/11/10 00:11:03.72
WinFormsでは面倒臭すぎてよほどのことでないとやる気がしなかった
オーナードローが、WPFならほとんどの場合ノンコーディングで楽勝でできる。
基本的に見た目だけ。バインディングが便利っつっても
自由度が大幅に増して複雑になってしまった分を補ってるだけで、
特にWinFormsより楽ってわけでもない。

129:デフォルトの名無しさん
12/11/10 00:38:51.22
WPFの便利さがわかりやすい実用的な例だと、複雑なリスト表示かな。
Twitterのタイムラインとかヤフオクの商品一覧みたいなのをイメージしてくれ。
あれHTMLならテンプレートエンジンとCSSで簡単に作れるんだけど
WinFormsでは結構大変。細かいデザイン性まで真似しようと思ったら途方もない手間だけど
そこまでしなくてもレイアウト自体難しい。WPFならノンコーディング。

130:デフォルトの名無しさん
12/11/10 01:52:09.60
トランザクションスクリプトで組んでるような奴はWinFormsやっとけ

131:デフォルトの名無しさん
12/11/10 07:41:39.52
トランザクションスクリプト vs ドメインモデルみたいな話がでちゃうのもu氏の弊害だな。

132:デフォルトの名無しさん
12/11/10 07:49:43.19
ドメインロジックを、スクリプトで書くかドメインモデルを使って書くかという話でしょ?

MVVMのMはアプリケーションモデルの話で、そこがステートレスかステートフルかという話を
トランザクションスクリプト vs ドメインモデルの話だと捕らえちゃっている所がなんとも。

133:デフォルトの名無しさん
12/11/10 12:36:42.73
アプリによってはMがちゃんとしてれば十分なケースで、
無意味に面倒なだけのVMを作って、それでMVVM糞とか言ってる奴も多そうだな。

134:デフォルトの名無しさん
12/11/10 12:43:36.53
VMに本質的なロジックをだらだらと書いて、これがMVVMだと信じてる奴も多そうだな

135:デフォルトの名無しさん
12/11/10 13:44:28.67
Viewにはこれ
ViewModelにはこれ
Modelにはこれ
Project全体ではこれ
環境はこのフレームワーク
みたいな、これとこれとがあればMVVMで、作れますよって定義が抽象的っつーか複雑すぎるんですよ
とっかかりから色々な概念や専門的な知識が必要だったら学習コストが高すぎるし、難しすぎなんですよ
尾上にしても、そういうPGのレベルに応じた実例サンプルなんてぜんぜん提示・解説してないわけで
MVVMとフレームワーク(ライブラリ)の両方の使い方を同時に説明してくれてる人って日本だとかずきくらいなんですよね
それも詳細ってわけじゃないし・・・

136:デフォルトの名無しさん
12/11/10 13:48:11.98
win32API使った姑息な手とか出来ないのがちょっと最初は戸惑う

137:デフォルトの名無しさん
12/11/10 13:58:51.02
>>135
Web MVCをやってみればいい。MVVMや本来のMVCと違って超スタンダードだから
ノウハウも初心者向けのガイドも腐るほどある。
MVVMはどっちかというと本来のMVCよりもWeb MVCに似た感じなので
なんでMVVMがそういう構造になってるのかわかるよ。

138:デフォルトの名無しさん
12/11/10 14:27:47.34
Web MVCってVとC-Mが物理的に分断されてるから、直接データベースを弄ったりしてる
長大なコントローラーだらけの糞コード(WinFormsやWPFでイベントハンドラに全部書くのに相当)
でも比較的テストしやすいんだよ
MVVMの場合は通信回線の代わりにバインディングだけでやれという縛りプレイで分離してるわけだ
そう考えるとMがちゃんとしてればVMはそれほど重要なものじゃないし、
VMにたくさんコード書くのも間違いなのは明らか

139:デフォルトの名無しさん
12/11/10 14:36:01.32
なるほどな例えだ。確かにwebでajax的に非同期通信やりまくる時の感じに似てるかも試練。
不自由感?がw

140:デフォルトの名無しさん
12/11/10 17:34:11.77
もうWPFとかMSがどれくらい力入れるか怪しいものを薦めようと思わない

141:デフォルトの名無しさん
12/11/10 18:00:26.27
バインディングはいいけど、F12でソースの方に飛んでくれよって思うわ
このコマンドのコードどこに書いたっけって毎回検索するのが面倒

142:デフォルトの名無しさん
12/11/10 19:27:25.48
>>141

バインドはダイナミック
プロパティもコマンドもダックタイピング
実行時までバインド先はわからない

143:デフォルトの名無しさん
12/11/10 19:29:03.44
マジ使えねーな
お洒落なVSのサイトこさえてる場合ではなかろうに

144:デフォルトの名無しさん
12/11/10 19:57:07.16
>>142
わからないのはわからないようにしているだけ
コマンド名は同じなんだから
そのコマンドに関連付けられたメソッドまで飛んでくれって思う

145:デフォルトの名無しさん
12/11/10 21:13:05.97
>>144

わからないっていうより、実行時まで確定しないんだよ
XAMLで指定するのはあくまでコマンドなりプロパティの"名前"だけ

たとえばViewModelAとViewModelBに、それぞれSampleDataっプロパティあるとして
片方はstring、片方はintでも、同じ{Binding SampleData}でバインドできる。
そしてDoSomethingCommandって同じ名前のCommandがあるとして、
片方はExcel出力、片方は印刷だったりしても、両方ともXAMLは共通で
{Binding DoSomehintgCommand} だけで行ける。

どちらのViewModelをバインドするかを条件によってif文で分岐したりすると
ViewModelAとBとどちらなのか、Excel出力と印刷とどっちのメソッドなのか
実行時までどちらかは確定しないでしょ

146:デフォルトの名無しさん
12/11/10 22:18:11.00
>>145
じゃあ、どんどんロジック分離していったら
最終的に宣言に移動も参照に移動も何もかもできなくなるってことじゃない?
一体このメソッドやプロパティは何に使われるのかわからないようなゴミが大量に増えていきそう
MODELとVMもそんな感じで分離したらもうわけがわからない

147:デフォルトの名無しさん
12/11/10 22:20:12.55
>>145
確定しなくてもいいから、同じプロパティ名に飛べよってことだよ
律儀にIDEもその仕様に合わせることないでしょ

148:デフォルトの名無しさん
12/11/10 22:39:24.54
VMのデザイン時インスタンスってのもあるしな。
それが設定されてれば飛んでくれたっていいと思う。論理的にどうかじゃなくて利便性だわな。

149:デフォルトの名無しさん
12/11/10 22:56:58.64
Ugayaが余計なことをしなければ、MVVMもここまで誤解されなかっただろうな。今からでもいいから余計なことを言うのを止めて欲しいわ。

150:デフォルトの名無しさん
12/11/10 23:02:06.81
コマンドを使わずVMのメソッドにしておいて
イベントハンドラからVMのメソッドを呼び出すようにすればいいんじゃね?
VM省きたくなりそうだが

151:デフォルトの名無しさん
12/11/10 23:07:32.39
>139
お前の頭が不自由なだけだろ。

152:デフォルトの名無しさん
12/11/10 23:17:54.05
>>151
ほぅ。お前は動的ページと静的ページとで工数が変わらんってことか。流石だなw

153:デフォルトの名無しさん
12/11/10 23:20:34.72
コードビハインドと比較すれば間違いなく不自由でしょ
あえてやりとりの自由度を下げることで部品の再利用性や保守性を上げるんだよ
カプセル化ってそういうもん

154:デフォルトの名無しさん
12/11/10 23:39:37.87
実際GUIを頻繁に作り変えたりするのかって話
ほとんどないだろそんなの

155:デフォルトの名無しさん
12/11/10 23:42:14.16
そもそも論で、新規プロジェクトでWPF作った時にXamlとcsしかないんだからコードビハインドでゴリゴリ書くやつを下等PGとか酷いと思います・・・><

156:デフォルトの名無しさん
12/11/10 23:49:38.52
新たにGUIを書きなおそうとした時
プロパティ名をVMと同じにしないと当然動かないわけで
じゃあ、どんなプロパティが用意されているのかと探すための補助機能がないから面倒過ぎる
例えばイベントハンドラなら、デザインプロパティから選んだりできるので楽だけど
そういう機能がコマンドやバインディングに用意されていない
分離することで作業効率が落ちているとしか思えないんだが
イベントだと対応するイベントハンドラがないとコンパイラエラーが出るので
そこは確かに煩わしく感じるけど

結局GUI有りきでコーディングしていかなきゃいけないんだよな

157:デフォルトの名無しさん
12/11/10 23:51:17.54
>>155
MSが用意してくれているMVVMテンプレートだとVMにコード書くようになってるぞ

158:デフォルトの名無しさん
12/11/11 00:03:07.94
>>157
マジっすか?
だったらRouting Eventとかなくしてコードビハインド禁止にすれば下等とか争わなくて済むのに!
そしてXamlにポトペタしたら自動的にコマンド作ってくれてバインドしてくれればいいのに!

159:デフォルトの名無しさん
12/11/11 00:07:18.36
そして当のMS自身はVisualStudioやBlend作るのにコードビハインド全開という事実

160:デフォルトの名無しさん
12/11/11 00:17:42.46
ブラック企業であればあるほどMVVMは無理ゲー。
作りながら設計みたいなのには向かないw モデルの変更入りまくりでふぇぇぇ・・ってなる

161:デフォルトの名無しさん
12/11/11 00:37:10.92
要するにユーザーには幻想を見せておいて自分は実利に走っとるんや
さすがまやかし企業なだけあるで

162:デフォルトの名無しさん
12/11/11 01:06:20.51
つーか、マイクロソフトが公開してるサンプルだって、コードビハインド
使っとるだろ?
勝手に幻想抱いて、勝手に振り回されてるのは、愚かなオタクプログラマー
だけってこと

163:デフォルトの名無しさん
12/11/11 01:10:12.23
MVVMが適してるのってデータベースの行弄ってアップデートするだけの
しょーもない画面がたくさんあるアプリだよ
VisualStudioみたいに一つの複雑な画面で拡張性持たせるようなのには向いてない
趣味で作るようなツール系のアプリにもね

164:デフォルトの名無しさん
12/11/11 02:19:59.99
C#自体があるソフトの外部ツールとして動作させるのに向いてない
ちょっとした処理をさせたいだけなのに処理よりも起動の方に時間がかかる
WPFが必要な場面ってなに?
PC自体が下火で、やっているのはエロゲーマーかアングラなP2P利用者ぐらい
より多機能で重くなっていくOSなんて誰も求めていなかったんだなとつくづく思う

165:デフォルトの名無しさん
12/11/11 03:27:56.00
業務アプリ向けなんだが
業務向けマは勉強嫌いだからな

166:デフォルトの名無しさん
12/11/11 03:38:38.74
確かにプログラミング好きってPGに会ったことないな
家でプログラミングしてるやつなんて10人に1人もいないよね

167:デフォルトの名無しさん
12/11/11 04:02:51.13
小学生の時からプログラミングやっているおれ
もちろんプログラマなんかにはならない
趣味だからね

168:デフォルトの名無しさん
12/11/11 04:50:03.50
てか、便利なとこだけ使えばいいんじゃないの?

名前が同じだけで別々のプロパティ・コマンドにバインドさせたい時は
敢えて同名で統一しとけば楽勝で簡単ってだけ。

名前も違うし機能も違うけど、共通のViewを使いまわしたいっていうなら
ViewでDependencyProperty定義して、
そこからコードでバインドさせるようにしてやればいい。

別にコードビハインド否定する必要はないよ。俺も使いまくってる。

169:デフォルトの名無しさん
12/11/11 15:41:08.46
UIが見えないhidden的なコントロールにした方が便利そう

170:デフォルトの名無しさん
12/11/12 00:29:21.72
>>156>>168
プロパティ名とVMが同じじゃないと動かないってどういうこと?
違ってもバインドできるよね?

171:デフォルトの名無しさん
12/11/12 03:56:42.42
MVVMで作ってみたんだけど
複数のコントロールがあるタブをコメントアウトして削除しても
エラーなくコンパイルできるな
これはすごいや
WinFormだとイベントの宣言削除しなきゃいけないのですごく便利

172:デフォルトの名無しさん
12/11/12 05:56:21.60
>>170

なんか単純にアンカー先混乱してるだけの気がするけど
145=168=俺で、
156は赤の他人で、言ってる内容も立場も全く逆だよ

プロパティ名とVMが同じじゃないと動かない云々ってのは
156の言ってることで
それに対してのレスも含んだのが168だったけど。

XAMLで直接{Binding 〇〇} って指定する場合は
同じ〇〇って名前のプロパティなりコマンドにしかパインディングできない

動的に△△や××って名前のプロパティやコマンドに
実行中にバインド先を変えたいなら168のように
コードビハインドからバインドさせるしか思い浮かばないけど

173:デフォルトの名無しさん
12/11/12 10:49:24.98
>>171
そんなもnMVVMじゃなくてコードビハインド+イベントハンドラでも同じだぞ

174:デフォルトの名無しさん
12/11/12 15:14:38.62
>>165
業務アプリというのは、システムを開発して業務を効率化するためでなく
企業ごとに存在する奇妙なルールをシステム化してるだけの仕事だからな
しかもシステムの仕様を決定するのは、現場ではなくあくまでお偉方

当然業務内容の改善なんか提案できるはずもなく
エンドユーザーも使いたくないようなシステム作らされる
しかもその理解しがたいルールを成文化し設計・コーディングするので偉く骨が折れる
モチベーション下がるし学習意欲も失って当然だろう

175:デフォルトの名無しさん
12/11/12 15:42:16.14
実際に作るのは下請けだし、給料安いしな。使い捨てだし。

176:デフォルトの名無しさん
12/11/12 16:06:56.07
> しかもその理解しがたいルールを成文化し設計・コーディングするので偉く骨が折れる

修正↓

しかもその理解しがたいルールを成文化するだけで偉く骨が折れる
さらに営業が理解し切れてない仕様から設計しコーディングするので苦労は筆舌に尽くしがたい
しかも顧客へのヒアリングに必ず問題があって、毎回開発途中で劇的な仕様変更が発生する

177:デフォルトの名無しさん
12/11/12 16:54:09.53
納品=プロトタイプのリリースか?ってくらい変更入るのもあるぜ。契約どうなってんだw

178:デフォルトの名無しさん
12/11/12 17:08:14.89
これ思い出した

URLリンク(www.cagylogic.com)

179:デフォルトの名無しさん
12/11/12 18:51:42.99
規模が大きくなってくると相手の会社にも業務ルール把握してる奴がいないという
ナンセンスなギャグを披露される

180:デフォルトの名無しさん
12/11/12 19:00:31.89
仕事の話をしているひとってC#で仕事しているってこと?

181:デフォルトの名無しさん
12/11/12 19:18:29.36
C#・VBどちらでも実装できるよ
くだらない仕様に振りまわされるだけでも疲れてるのにWPFへの移行が加わりチームが限界に近づきつつある
そこにMVVM習得しなければWPFは使えないという空気が蔓延すると、チームがトドメ刺されてしまう
これだけは回避したいです

182:デフォルトの名無しさん
12/11/12 19:39:38.95
WPFするにはPrism,Livet必須です

183:デフォルトの名無しさん
12/11/12 19:40:10.46
ステマってんじゃねーよ死ね

184:デフォルトの名無しさん
12/11/12 19:42:09.15
MVVMしなければWPFやる意味が無いです

185:デフォルトの名無しさん
12/11/12 19:43:03.90
ステマってんじゃねーよ死ね

186:デフォルトの名無しさん
12/11/12 20:23:15.03
WinFomsの苦しみから解脱したいからWPFするのに
さらに苦しみたくないです

187:デフォルトの名無しさん
12/11/12 20:44:55.52
そしてVMのコマンドハンドラでSQL発行するクソの山ができあがるんだろうな
VMを必要以上に有難がる奴ってMのなんたるかを理解してないと思う

188:デフォルトの名無しさん
12/11/12 20:46:32.16
sucks so much

189:デフォルトの名無しさん
12/11/12 23:29:51.90
MVVMはじめてから女の子にモテるようになった気がする

190:デフォルトの名無しさん
12/11/12 23:34:59.24
fuckness

191:デフォルトの名無しさん
12/11/12 23:44:17.61
MVVMで腰痛治りました

192:デフォルトの名無しさん
12/11/12 23:47:26.50
僕はMVVM使い始めて一週間で彼女が出来ました

193:デフォルトの名無しさん
12/11/13 00:11:35.14
kick you butt

194:デフォルトの名無しさん
12/11/13 01:39:27.85
WPFで文字に影つけて
背景をグラデーションにしとけば
現場しらないおっさんたちは喜ぶんだから
MVVMとか別にいらない。

195:デフォルトの名無しさん
12/11/13 04:19:16.13
WPF技術者が増えないわけだ。

196:デフォルトの名無しさん
12/11/13 04:58:27.20
とりあえず、別にMVVM使わなくてもWPFは使えるからね
変にハードル上げる必要ない

『Pro WPF in C#』とか、予備知識ゼロから勉強できていい本だけど
厚さ6~7cmある分厚い本だけど全部コードビハインドでやってる
MVVMとか全く出てこないよ

(別に、MVVM否定してるわけじゃない。俺はMVVM使ってるしw
ただ、MVVMを一切使わないWPFもそれはそれで別に間違ってないってこと)

あとBlendとかも別に要らない
複雑なアニメーション作る場面とかしか使ったことないや

197:デフォルトの名無しさん
12/11/13 05:05:02.00
コードビハインドに書くとメモリリーク起こすからなぁ

198:デフォルトの名無しさん
12/11/13 09:55:54.92
XDesProc.exeがやたら固まるんだけど
記述がクソなせいですかね

199:デフォルトの名無しさん
12/11/13 10:04:41.58
>>197
書き方による
うまく書けばリークしないよ

200:デフォルトの名無しさん
12/11/13 10:21:50.30
なぜどういうときにメモリリークするのか理解せず、
ただUの言うことを鵜呑みにしてコードビハインド書くとメモリリークと唱和してるような
レベルで無理してMVVMなんて使ったところでメリットは得られないだろうし
ほかのところでメモリリーク起こすよ

201:デフォルトの名無しさん
12/11/13 11:25:38.84
Microsoft.Expression.Interactionsってなんで標準じゃないの?

202:デフォルトの名無しさん
12/11/13 11:30:24.50
Blendのための機能だから
VSのデザイナだけじゃビヘイビアなんかはっきり言って使い物にならん

203:デフォルトの名無しさん
12/11/13 11:33:56.62
>>200の言うとおり。

204:デフォルトの名無しさん
12/11/13 12:29:41.93
シノフスキー退職でまた混迷しそうだな

205:デフォルトの名無しさん
12/11/13 12:39:38.61
今更メトロsageでWPF推しになっても手遅れ

206:デフォルトの名無しさん
12/11/13 13:00:32.09
c#はメモリリークしないっ言ってたじゃないか。

207:デフォルトの名無しさん
12/11/13 13:09:00.67
だれが

208:デフォルトの名無しさん
12/11/13 13:15:53.67
フレームワーク的にはしないとも言えるんじゃないか。参照があるから掴んでるんであってw

209:デフォルトの名無しさん
12/11/13 13:39:32.51
WPFのtoolkitのChartでSilverlightのtoolkitのChartのStackedColumnSeriesの様な表現がしたいです
グラフ上で凡例ごとの値を縦積み表示にするやつ
■←こんなの
□←こんなの
■←こんなの
WPFのtoolkitに同様のChartはあるんですがStackedColumnSeriesはありません
同様の表現をしたい場合、代替のクラス、プロパティ等はありますか?

210:デフォルトの名無しさん
12/11/13 15:55:31.39
CallMethodActionにパラメータ渡したかったら
Command要る?

211:デフォルトの名無しさん
12/11/13 16:57:31.31
Command全廃でおk

212:デフォルトの名無しさん
12/11/13 19:26:33.93
>>209
WindowsFormsHostでMicrosoft Chart Controlsを使えばおk
XAMLのChartとかウンコだしこんなもんWPFにこだわる意味ない

213:デフォルトの名無しさん
12/11/13 21:02:10.57
>>212
ありがとうございます
糞なのか・・・Silverlightでは長く採用してきただけに残念
でも、せっかくなのでその方法でやってみます
WindowsFormsHostは既にWPFから帳票.NET呼ぶ段で使ってるからなんとかなりそう

214:デフォルトの名無しさん
12/11/13 21:43:23.74
市販コンポーネント買っちまえ

215:デフォルトの名無しさん
12/11/13 22:59:29.71
Infragisticsのコンポーネントはいいぞ

216:デフォルトの名無しさん
12/11/14 02:54:23.56
すべてのコントロールがWinForm以上にならないとやる気がしない
劣化するとかありえんわ

217:デフォルトの名無しさん
12/11/14 03:01:08.10
同じことするのにコーディング量が増えるなんて論外。それならMFCのほうがマシ。

218:デフォルトの名無しさん
12/11/14 10:42:58.17
なになにの責務とか考えてると禿げる。コードビハインドが全責務を負いますよ!

219:デフォルトの名無しさん
12/11/14 19:55:52.33
可能かどうか教えてください。

ListBoxの各1行に画像とテキストを配置するように、バインドします。
この状態でListBoxのアイテムをクリックすると、画像とテキストを含めた1行全体が選択されます。
そうではなく、1行内の画像、テキストの各項目をクリックできるようにしたいのですが
可能でしょうか?

220:デフォルトの名無しさん
12/11/14 20:07:22.62
可能

221:デフォルトの名無しさん
12/11/15 11:30:23.67
Window表示して閉じたらただちにGC.Collect実行してるのだけど
GC.GetTotalMemory(True)で調べたら、Window起動するたび使用領域増えてくるが、これは仕様なの?

222:デフォルトの名無しさん
12/11/15 11:44:43.59
まずパフォーマンスモニターでどのヒープが増えてるのか調べるんだ

223:デフォルトの名無しさん
12/11/15 11:56:12.09
.NETってクライアントの応答性を重視しすぎてGCのメモリ管理に問題があったりするんだよな
WPFで画像のバッチ処理とかやろうとすると素直に書いたらほぼ確実にOutOfMemoryで逝く

224:デフォルトの名無しさん
12/11/15 11:58:07.27
見方よく判らないけどメモり見るとWindow起動するたびワーキングセットが一番増えてる
それに引きずられる感じでコミットとプライベートが増えてる感じかな

225:デフォルトの名無しさん
12/11/15 12:07:56.51
タスクマネージャーじゃなくてパフォーマンスモニターだぞ
でグラフにCLRのメモリ系全部追加する
特に注目するのはGen0Heap,Gen1Heap,Gen2Heap,Large Object Heapやハンドルの数など

226:デフォルトの名無しさん
12/11/15 12:47:36.93
thx、調べてみました。
Gen0Heap
単位0.000001で22くらいを維持してる。起動する瞬間だけ増える
Gen1Heap
単位0.000001でWindow起動する瞬間増えるけど、その後減ったり増えたり
Gen2Heap
単位0.0000001でWindow起動するたび1~2増加。GC.Collect実行しても減らない
Large Object Heap
単位0.000001でずっと8くらいを維持してる

227:デフォルトの名無しさん
12/11/15 12:49:29.63
Gen0とかGen1ってヒープ世代という理解でいい?

228:デフォルトの名無しさん
12/11/15 13:08:24.58
Gen0最初に割り当てたとき
Gen1 GCで生き残ったGen0が昇格
Gen2 GCで生き残ったGen1が昇格
だっけ?
Gen0から優先的に開放されて、Gen2はよっぽど逼迫しないと
開放されないとか

229:デフォルトの名無しさん
12/11/15 15:11:10.39
>>226
レポート表示に切り替えてみて、Gen2ヒープの増える量と問題の数値のオーダーが一致するなら
たぶん参照リークしてるんだろうな
よく知られたGCの問題でLarge Object Heapの断片化というのがあるけどそれではなさそう
CLR Profilerの出番。実際にGen2ヒープの状況を覗いてみて、どの型のオブジェクトがメモリを
占有しててどこで割り当てられてて誰に参照を掴まれてるのか調べる。

230:デフォルトの名無しさん
12/11/15 16:19:42.15
>>229
スゲェ!マジありがとーです!!!
CLR Profilerの使い方やっと判ってきたので今調べてます!!!!

231:デフォルトの名無しさん
12/11/15 17:35:33.90
終了した筈のWindowが起動した数だけヒープに残ってて、

System.Windows.EffectiveValueEntry []→
System.Windows.Automation.Peers.WindowAutomationPeer→
System.Collections.Generic.List<T>→・・・

と追ってったらサードパーティ製グリッドの参照が出てきました
まだグリッドにソース設定してないのに起動・終了繰り返しただけでこれって・・・(`д´;)

232:デフォルトの名無しさん
12/11/16 19:52:08.62
WPF、C#でウィンドウを作っています。

タブキーで画面を移動していると、コンボボックスにフォーカスが当たったとき、勝手にコンボボックスが展開されてしまいます。
どうしたら、勝手にコンボボックスが展開されないように出来るでしょうか?

233:デフォルトの名無しさん
12/11/16 19:55:59.11
>>232
普通はそんなこと起きないんだが
まず環境を教えろ

234:デフォルトの名無しさん
12/11/16 19:59:20.59
>>233
開発環境は、VS2010、.NET3.5、C#です。
動作環境はWin7です。

235:デフォルトの名無しさん
12/11/16 20:12:01.02
>>234
VS2010と7で.NET3.5?

236:デフォルトの名無しさん
12/11/16 20:18:53.26
>>235
いえっさー

237:デフォルトの名無しさん
12/11/16 20:59:39.02
どうXAML記述してるか判らんから回答しようがないな

238:デフォルトの名無しさん
12/11/16 22:13:10.33
>>232
コンボボックスの選択リストがドロップダウン表示されるって事?
フォーカスで選択リストが出るって事はキーボードオペレーション対応の為にフォーカス時展開みたいな事してんじゃないの?
F4押せば出る事しらない人もいるだろうし
それは仕様なのか否か確認するべき

239:デフォルトの名無しさん
12/11/16 22:54:44.44
>>238
仕様ではないです。

>フォーカス時展開みたいな事してんじゃないの?
探してみたら、やってました。

ありがとうございます。

240:デフォルトの名無しさん
12/11/16 22:56:02.51
痴呆か

241:デフォルトの名無しさん
12/11/17 00:16:53.21
Expression Studio 4 UltimateってのはVisual Studio 2010を持っていたらアップグレード版を購入できるんですかい?

242:デフォルトの名無しさん
12/11/17 02:41:27.90
タブを多段表示にするとタブをクリックするごとに
上と下の順番が変わるのですが変わらないようにする方法はありますか?
FlowLayoutなどにボタンを追加してタブ代わりにするか思いつきません

243:デフォルトの名無しさん
12/11/17 03:28:41.57
>>242
古い記事だが
URLリンク(tnakamura.hatenablog.com)

244:デフォルトの名無しさん
12/11/17 04:19:58.08
すごいコピペでできちゃった
ありがとう

245:デフォルトの名無しさん
12/11/18 09:51:25.36
可能か不可能かで教えてくだしあ
WPFとXNAの共存は可能?
(要はXAMLUIの中に一部XNAの描画領域を埋め込み)
それぐらいしなきゃ描画不可能なレベルの要求があるんだが

246:デフォルトの名無しさん
12/11/18 10:20:14.98
できる
ちなみにWinFormにXNAで描画もできる
サンプルもいくつかあったと思う

247:デフォルトの名無しさん
12/11/18 11:51:40.63
WPFやWinFormsと一緒に使うなら融通の利かないXNAよりも
SharpDXなどのラッパーかC++で生のDirect3Dを使ったほうがいいと思うよ
SilverlightならXNAベースのインターフェイスがあるんだけど
WPFの場合、まったく別個に動かしてサーフェスをコピーする形になる

248:デフォルトの名無しさん
12/11/18 11:53:41.34
>>246
ありがとう
WinFormが使えるのはうれしいな
早速確認してみる

249:デフォルトの名無しさん
12/11/18 11:59:29.56
>>247
DirectXを使ったほうがよいのね
だけどそっちで見積もれる人間がいないんだよな・・・開発は人を入れるにしても
ひとまず使うかどうかはさておき、確認してみます
具体的な事までありがとう

250:デフォルトの名無しさん
12/11/21 11:09:46.48
>>196
> あとBlendとかも別に要らない
> 複雑なアニメーション作る場面とかしか使ったことないや
そう思ってた時期が俺にもあったがこの間勉強会でBlendの話聞いて便利だと思ったよ。
うまく使うと手でしこしこあっちこっちいじらなきゃいけんのを一発でやってくれる。
実際にはBlendとXAML手書きをうまく併用するのが生産性最も高そう。

251:デフォルトの名無しさん
12/11/21 23:52:56.12
Blend2012はよでてにゃ!

252:デフォルトの名無しさん
12/11/22 14:57:56.45
Blend さんはこの中の人だったはず
URLリンク(www.microsoft.com)

253:デフォルトの名無しさん
12/11/23 02:06:39.10
会社でMSDNの購買担当だったんで2012 Proでいいだろうと思って契約したらBlendがWindows Storeアプリしか作れないんですが・・・?
Blend 4買えとか詐欺だろ糞

254:デフォルトの名無しさん
12/11/23 02:54:02.21
blendは甘え

255:デフォルトの名無しさん
12/11/23 02:54:17.95
ちょっと検索すりゃすぐ分かるんだから、そのくらいの下調べはやっとけよ…

256:デフォルトの名無しさん
12/11/23 06:38:02.72
>>253
その辺業務で絡むんなら無能乙としか言いようがない。
釣り針で有ることを望む。

257:デフォルトの名無しさん
12/11/23 14:01:23.15
検索できる、試用版がある
>>253 が悪い
>>253 減給w

258:デフォルトの名無しさん
12/11/24 12:39:52.30
WPFで作ると苦労して作ったコントロールのデザインを
簡単にそっくりそのままパクられるから嫌だな

259:デフォルトの名無しさん
12/11/24 12:42:03.28
エスペラント語で頼む

260:デフォルトの名無しさん
12/11/24 16:09:03.49
La dezajno de la komando kiu estis farita kun malfacila?o kaj faris en WPF
Ne malamu ?ar estas facile totalo Parko.

261:デフォルトの名無しさん
12/11/24 16:17:33.27
パクられるのがイヤなら全部自力でDirect2Dでも使って描くか
いちいちデザインで特許申請して通るまで公開しないか
そもそも人に見せる物なんか作るな

262:デフォルトの名無しさん
12/11/24 16:26:14.03
ページめくりエフェクトや角を落としたタブレットのデザインで意匠取れるみたいだから行けるだろうな
まあアメリカの特許がポンチなだけかもしんないけど

263:デフォルトの名無しさん
12/11/25 00:11:39.89
リストボックスのあのクリックのやりにくさをどうにかなりませんか?
文字が書いてあるところをクリックしないと反応しない

264:デフォルトの名無しさん
12/11/25 04:25:17.81
普通はどこクリックしても反応するけどね

265:デフォルトの名無しさん
12/11/25 11:14:32.22
勉強かねて2chブラウザを作ってるんですが、レスを表示するコンポーネント
をどう作るか悩んでます
・リンク混じりのテキストを表示
・リンクも含めて選択、コピー可能
・もちろん編集不可
・レスを跨って選択はできなくてもいい
・サムネイル表示もしたいけど、それは別枠でOK

自分で調べたところ、RichTextBoxを使うのが良いのかな?と思っているのですが他にいい方法ありますでしょうか?

266:デフォルトの名無しさん
12/11/25 11:17:48.57
練習ならListView+ItemTemplateで作れ。WPFの基本だ。
実用ならHTML使うかDrawingレイヤで自作

267:デフォルトの名無しさん
12/11/25 11:48:46.06
>265
自分はフロードキュメントで作ってます。
すごく汚いですが、表示部分はソースを公開してます。
URLリンク(neetchan.on.arena.ne.jp)
お互い頑張りましょう。

268:デフォルトの名無しさん
12/11/25 11:57:10.29
えー
FlowDocument(≒RichTextBox)だと手で要素並べるんだよね?
どうせそれやるんだったら俺ならDrawing(WPFの方な)でやるかDirectWriteでも使うかなあ
手軽にWPFらしい作り方で作るんだったらItemTemplate使う方のアプローチになるだろうし

269:デフォルトの名無しさん
12/11/25 12:37:50.66
>>266
Drawingレイヤでってのはパフォーマンスのため?
WinRTだとDrawing無いよね?どしよう。

270:デフォルトの名無しさん
12/11/25 12:39:36.12
HTMLでいいじゃないか

271:265
12/11/25 14:46:37.55
一応今のところListView + ItemTemplate使ってはいます
で、中身をどうしようかなということでRichTextBox使おうかと思っていました

>>267
お~参考にさせていただきます

レス跨ってコピーとか考えるとHTMLが良いようにも思うんですが・・・
Drawingは知らなかったので調べてみつつ、基本はRichTextBoxでとりあえず
いってみようと思いましたが・・・もしかして素直にFlowDocumentにバインディング
できないんですかね?これ

もうちょっと悩んでみます

272:デフォルトの名無しさん
12/11/25 17:09:40.96
>>271
今ニコ生のコメントビューア作ってるんだが、コメント表示機能で同じようなこと悩んでるわ

私見を述べれば、RichTextBoxが無難なところかなと思う。
Drawingだと文字列のドラッグコピー機能とかかなり鬼門になるだろうし、
HtmlだとWebブラウザ貼り付けになると思うが、
WPFのWebブラウザはDocumentがなぜかobject型になっていてどうやって編集すればいいのかわからんかったわ
消去法でRichTextBoxかという感じだ

273:デフォルトの名無しさん
12/11/25 20:00:40.27
IEコンポでいいやん。

274:デフォルトの名無しさん
12/11/25 23:23:23.62
WPFのコントロールは2chブラウザを作れないほど糞なんだよ
しかも遅い

275:デフォルトの名無しさん
12/11/26 12:30:38.59
背景画像をタイル設定してるのにタイリングにならない・・・
まさかCみたいにコーディングが必要とか言わないよね・・・?

276:デフォルトの名無しさん
12/11/26 15:12:35.42
夢は終わったんだよ。

277:デフォルトの名無しさん
12/11/26 17:54:02.87
>>274
え、WinFormsでやってても普通ブラウザコントロール使うだろ?

278:デフォルトの名無しさん
12/11/26 23:20:46.70
今日1日Xaml触ってたけどExpression Studio使いこなすの大変すぎるね
使い慣れたVSでちまちまいじる方が理解しやすいけど、インテリセンスきかなさすぎてWPFのXamlつら過ぎるわ・・・
何か試すたびにググらないといけないから、Formに逃げそうになる
ViewだけでこれじゃViewModelとか嫌になるな・・・

279:デフォルトの名無しさん
12/11/27 00:18:42.03
単純なVMだったらラップして渡すだけだよ。

それですら面倒なら
ストアアプリのサンプルみたいにDefaultViewModelに突っ込む設計でもいい。
URLリンク(msdn.microsoft.com)
こんな感じで動的に解決してくれる手抜きクラス用意してもいい。

280:デフォルトの名無しさん
12/11/27 00:37:06.04
VS2010、C#、XAMLです。


ListBoxとか、ListViewとか、TreeViewに少しずつアイテムを足していきたいと思っています。
別スレッドで一個ずつ足していき、ゆっくり画面に表示されるようにしたいと思ってます。

とりあえず、以下のようにサンプルコードを作ったんですが、
一個ずつ表示されず、まとめて全部表示されてしまいます。
どうしたら一個ずつ表示されるようになるでしょうか?


サンプルコード
MainWindow.xaml.cs
URLリンク(ideone.com)

MainWindow.xaml
URLリンク(ideone.com)

281:デフォルトの名無しさん
12/11/27 00:58:17.41
>>280
ボタンを押すとUIが止まってしまう
Thread.Sleepは別スレッドで実行しないと

282:デフォルトの名無しさん
12/11/27 01:09:17.89
要はBeginInvokeの中じゃUIスレッドだからforの中にsleepを書けばいんじゃね。

283:デフォルトの名無しさん
12/11/27 01:11:05.51
>>281
ありがとうございます。なおりました

284:デフォルトの名無しさん
12/11/27 01:12:07.55
>>282
こちらの方も、ありがとうございます。
おっしゃるとおりでした。

285:デフォルトの名無しさん
12/11/27 04:00:42.29
>>277
webbrowserなんて使うわけ無いだろ

286:デフォルトの名無しさん
12/11/27 21:53:44.63
.NETのツイッターアプリそこそこあるし
もう2chブラウザ制作に魅力ないんだろう

287:デフォルトの名無しさん
12/11/27 22:59:31.36
windowstyle = noneでカスタムウィンドウ作るとマジで処理がめんどい・・・
確かにFormよりは楽だけど、WPFだからってそんなに楽か?って感じなんだが・・・
あとなにげにAero Snapがうざい、これあるから画面上まで持ってったときの処理も必要だし、なんかもう美しいUI目指すとWindowsが糞って結論に達するよな・・・

288:デフォルトの名無しさん
12/11/27 23:18:46.75
そのうち無機質が美しいとか言い出すから注意しろよ

289:デフォルトの名無しさん
12/11/28 01:47:03.91
来年の1月に2ch閉鎖らしいから今から2chブラウザー作るなんて無駄☆

290:デフォルトの名無しさん
12/11/29 16:12:26.78
デザイナ(IDEじゃなく人)が作ったxamlがグッチャグチャなんだけど、整形したりしてる?
普段デザインモードでバインド書いたりとかしないんだよなぁ。見づれぇ…

291:デフォルトの名無しさん
12/11/29 17:41:56.60
xamlって見ちゃいけないものだろ。

292:デフォルトの名無しさん
12/11/29 18:13:21.94
てか、むしろ、Visual Studioでなら、XAMLしか見ないw
デザインモード使い物にならないし

293:デフォルトの名無しさん
12/11/30 02:50:17.59
Blend出るの遅すぎてここんとこ手書きしかしてない

294:デフォルトの名無しさん
12/11/30 03:30:14.73
VS2012ならデザイン自体はBlendと大差はないだろ
BlendなしでビヘイビアとかVSMとかStoryboardとか使おうとするのは阿呆としか言いようがないが

295:デフォルトの名無しさん
12/11/30 11:30:47.14
>>294
ビヘイビア程度ならVSで充分
Storyboardもケースバイケース
似たような挙動をする大量のコントロールがあるなら、秀丸使った方がより早く実装できるケースもある

296:デフォルトの名無しさん
12/11/30 16:03:59.29
Blend出る前にwinBlueが出そうだ

297:デフォルトの名無しさん
12/11/30 21:32:30.74
とりあえずPreview使ってるよ

298:デフォルトの名無しさん
12/12/01 09:17:10.18
VS2012RTMの後そんなにかからない思ってたから放置してたけど
もうPreviewあったの忘れてたな、入れとこう

299:デフォルトの名無しさん
12/12/01 09:39:37.92
LICENSE TERMS になんか書いてあるよね
URLリンク(expression.microsoft.com)

>4.PRE-RELEASE SOFTWARE.
> This software is a pre-release version. It may not work the way a final version of the software will.
> We may change it for the final, commercial version. We also may not release a commercial version.

> We also may not release a commercial version.

> We also may not release a commercial version.

300:デフォルトの名無しさん
12/12/01 11:35:57.24
ええwwww

301:デフォルトの名無しさん
12/12/01 12:36:28.97
反故反故っ・・・・!

302:デフォルトの名無しさん
12/12/01 13:07:39.60
どういうことだってばよ!

303:デフォルトの名無しさん
12/12/01 13:46:45.49
リボンを使いたいんだけど、あれって色を自由に変えられるの?

304:デフォルトの名無しさん
12/12/01 17:47:13.93
当然テンプレいじったら変えられる

305:デフォルトの名無しさん
12/12/02 21:26:19.02
ふと思ったんだけど、WPFアプリケーションで
ユーザーコントロールを別アッセンブリって組み込むと
UIスレッドは別になったりする?
メインの画面がハング気味なのに、内側のコントロールは
普通に動いてた事があったんだけど、そういう物なのかな?
dllといってもcomコンポーネントみたいな扱いになるのかな?

306:デフォルトの名無しさん
12/12/02 21:38:15.00
そんなことはない

307:305
12/12/02 21:45:48.38
thx
思い過ごしですか。

308:103
12/12/02 21:54:21.62
Windowのフェードイン,フェードアウトってどうしてますか?
コードビハインドからBeginAnimationでやるのは正解かな

309:デフォルトの名無しさん
12/12/02 21:56:53.29
コードビハインドからVSMで操作するのが正解でしょ
Blendないならやめたほうがいいけど

310:デフォルトの名無しさん
12/12/02 23:36:31.27
>>305
別スレッドでコントロール作ったら、そっちのスレッドでもループ作られて動くようになると思うよ。
両方とも別スレッドから触ったらアウトだけど。

311:デフォルトの名無しさん
12/12/03 00:04:40.17
>>310
メッセージループは自動じゃ発動しないよ
あとSTAスレッドにしないといけない

312:デフォルトの名無しさん
12/12/03 04:10:52.77
でもアニメーションて、結局嬉しいの、(あるとしても)最初だけなんだよな
見慣れると0.1秒とかの短い時間の動きでも邪魔なだけになる

Windows95の時代から、
わざわざウィンドウの最小化/最大化のアニメ無効にするための
レジストリいじるTipsや、それを自動でやるフリーウェアあったりしたくらいで。

313:デフォルトの名無しさん
12/12/03 04:16:53.69
ないないw
その発言はセンスねぇわw
iOSやOS Xのアニメーションがうざいとか聞いた事ないぞ
一つ言える事は、日本国内で業務システム作ってるPG/SEでまともな美的感覚持ってるやつは一人もいないwww
うんこUI量産し続けるおまえらがUIとか語るなやwww

314:デフォルトの名無しさん
12/12/03 09:18:39.41
せやな

315:デフォルトの名無しさん
12/12/03 09:29:17.22
おう、すまんな。どっから沸いてきたんだw

316:デフォルトの名無しさん
12/12/03 15:01:17.29
WPFの標準コントロールってTemplateのせいで
プロパティ反映されないこと多すぎ

317:デフォルトの名無しさん
12/12/03 15:54:01.92
TemplateBinding使ってないからじゃね?
普通は要素に直書いてある属性(プロパティ)が最優先になってるよな。

318:デフォルトの名無しさん
12/12/03 19:24:13.01
ComboBoxの時点でウンコだよな

319:デフォルトの名無しさん
12/12/04 00:00:34.62
DataGridでヘッダーの文字列を一部右寄せにしたいです。


URLリンク(ideone.com)



のソースコードにあるように一部を左、一部を右寄にするにはどうしたらいいでしょうか?

320:デフォルトの名無しさん
12/12/04 00:12:26.18
Gridにつっこみゃいいって話じゃねーの? 何が問題なのか分からん

321:デフォルトの名無しさん
12/12/04 00:24:28.43
Grid に突っ込んでるつもりなんですが、できないんです。

↓ やりたいことと現状の比較。
URLリンク(www1.axfc.net)

322:デフォルトの名無しさん
12/12/04 00:40:40.36
<DataGridTemplateColumn.HeaderStyle>
&nbsp; <Style TargetType="{x:Type DataGridColumnHeader}">
&nbsp; &nbsp; <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
&nbsp; </Style>
</DataGridTemplateColumn.HeaderStyle>
これで

323:デフォルトの名無しさん
12/12/04 00:46:51.53
>>322
ありがとうございます。
ぶじ解決しましたです。

324:デフォルトの名無しさん
12/12/04 09:11:16.48
達者でな

325:デフォルトの名無しさん
12/12/04 14:48:45.80
WPF WindowのAllowsTransparency = TrueにするとWindowsFormsHostが表示されない・・・
ググるとバグらしいんだが.NET 4.5でもなおってないし、誰か詳しい人助けて・・・

326:デフォルトの名無しさん
12/12/04 22:32:14.08
ie9みたく左上にテキスト入力欄があって、
その右にタブアイテムをズラーっとならべたいのにできない・・・
コードビハインドでごりごりやらないと無理なのかな

327:デフォルトの名無しさん
12/12/04 23:00:27.79
タブを右にずらすのはテンプレートを使えばできるけど
そういう凝ったGUI作るんならコードで細かく制御するのはどうせいずれ必要だろうから
もっと低レベルな実装をしたほうがいいかもね

328:デフォルトの名無しさん
12/12/04 23:13:01.57
winformから移行しようと思うんだけどつらいかね?

329:デフォルトの名無しさん
12/12/04 23:13:53.80
ツライ

330:デフォルトの名無しさん
12/12/04 23:15:42.40
>>327
テンプレートですか、調べてみます。
ご指摘の通り、低レベルな実装になりそうな気がしますが

331:デフォルトの名無しさん
12/12/04 23:15:54.60
移行に苦労するならWinFormsでも糞コード書いてた証拠だろうな
たかが上面

332:デフォルトの名無しさん
12/12/04 23:19:53.40
ググって期待する答えが出てくるとは思わないことだ
幸運を

333:デフォルトの名無しさん
12/12/04 23:26:58.32
MVVMの為のような機能を一切使わなきゃそうでもないんじゃね。
Vのみでやって、コマンド、トリガーアクション、メッセンジャーこのあたりを使わなきゃ。
直でformを触れない縛りを課すと勉強せんと絶対詰む。

334:103
12/12/05 16:00:23.60
>>325
>>103

335:デフォルトの名無しさん
12/12/05 16:28:46.82
VisualStateManagerの内部的な挙動を知りたいんですが、あるStateの時にStoryBoardであるプロパティに値をセットするといったような動作の時、
その他のStateの際は元のXAMLに書かれていた値がセットされるんでしょうか?
たとえば、あるStateになった際に値がセットされた後、ボタンクリックなどでそのプロパティに違う値を入れた場合、別のStateになった際にXAMLに書かれていた値が上書きされると考えればいいんでしょうか?

336:デフォルトの名無しさん
12/12/05 16:42:41.25
そんなに詳しくないけど、XAMLで書いたデフォルト値は上書きされることは無いけど
StoryBoardで更新した値が何もしないで戻ることはないんじゃ無いの?
ただDoubleAnimationで言うと、別のStateでキックした
StoryBoardの初期値(Fromを省略した場合)は最後に設定した値で、
デフォルト値(Toを省略した場合)は元のXMALの値のままって事じゃ無いの?

間違ってたらごめん

337:デフォルトの名無しさん
12/12/06 00:12:49.28
StoryBoardどTemplateの使い分けってなに?
例えばボタンならどっちもそのときの状態でプロパティ変更するじゃん
Blendないとコスト高すぎて採用に足踏みするような機能は使いたくないんだが、おまらがStoryBoardいうから

338:デフォルトの名無しさん
12/12/06 00:40:11.06
要素ツリーの構造自体に影響するような変化はTemplate
見た目に関するプロパティを変更するだけならStoryboard

339:デフォルトの名無しさん
12/12/06 11:37:20.26
俺の場合
単一コントロールの見た目に関するプロパティを変更するだけならTrigger
複数コントロールの見た目に関するプロパティを変更するだけならStoryboard

340:デフォルトの名無しさん
12/12/06 11:40:04.14
いやTriggerってStoryboardを開始するもんだろ

341:デフォルトの名無しさん
12/12/06 11:47:33.79
とも限らんだろ。アクションはだいたいなんでもできる

342:デフォルトの名無しさん
12/12/06 11:52:43.33
そうじゃなくてTriggerとStoryboardの使い分けって意味不明

343:デフォルトの名無しさん
12/12/06 13:24:28.93
Trrigerだと複数のエレメント制御しづらいじゃん
StoryboardはXAMLがひどく冗長になるのでTriggerで済むものはTriggerで対応するよん♪

344:デフォルトの名無しさん
12/12/06 23:48:33.98
だからStoryboardを起動するのにTriggerを使うだろうと言っている
役割の被るものではない

345:デフォルトの名無しさん
12/12/07 00:02:42.29
Storyboardと比較するってことはTriggerじゃなくてTriggerActionのことを言いたいのか?
でも公式のTriggerActionってWPF標準の方にもBlendの方もStoryboard起動したり音鳴らしたりするだけで
プロパティ直接を設定するアクションってあえて用意されてないよね
トリガでプロパティを直接変更するなんてXAMLの役割を完全に逸脱してるからな

346:デフォルトの名無しさん
12/12/07 08:33:51.53
> トリガでプロパティを直接変更するなんてXAMLの役割を完全に逸脱してるからな
長さ0のアニメーションと考えればXAMLの役割のうちの気がする

347:デフォルトの名無しさん
12/12/07 09:40:12.14
xamlの役割とかいう縛りまで課すのか。ご苦労なことだなw
Vの責務かと聞かれればそうだろうし、なにやってもいいと思うんだが

348:デフォルトの名無しさん
12/12/07 12:19:21.84
ユーザーの頭が固い(もしくは固くなる)のが最大の欠陥じゃねーの

349:デフォルトの名無しさん
12/12/07 12:24:45.73
もともとWPFってXAMLで外観書いてコードビハインドで振る舞い書くのを
ビューとロジックの分離って言ってたんだぜ
ビヘイビアあたりからおかしくなった

350:デフォルトの名無しさん
12/12/07 13:10:49.94
ユーザの頭が柔らかくないと使えないツールは欠陥品だろ。

351:デフォルトの名無しさん
12/12/07 13:31:00.78
ホントに意味不明だな
なんでちょっとプロパティ変更するのにわざわざStoryboardとアニメーション用意する必要あるのよ
Triggerで充分じゃん
なんか宗教になってるようでちと怖い

352:デフォルトの名無しさん
12/12/07 13:32:34.31
>>349
ソースきぼんぬ

353:デフォルトの名無しさん
12/12/07 16:20:57.67
金科玉条ってまさにそういうこと

354:デフォルトの名無しさん
12/12/07 16:48:30.63
Blend絶対主義者も宗教だよな
別にBlendあってもいいし俺も稀に使うことあるが、BlendなくてもXAML書けるしVSだけで事が済むならBlend使わなくていいと思う

355:デフォルトの名無しさん
12/12/07 19:24:35.00
Blendに傾倒するならExpress版を出せっ!

356:デフォルトの名無しさん
12/12/07 20:08:39.25
MVVMだとかWPFの
表示系と処理系の分離とかは、良いんだけど、如何せん、フォームに比べて面倒だと思う。
フォームでも設計によっては、データバインディングとかで表示系と処理系を分離させることはできるし、
なんだかかっこいいグラデーションとかそういうのを気にしないようなアプリ作ったりするのに
WPFとかXAMLとかBlendとかどうにも手を出しにくい感があるわ。

357:デフォルトの名無しさん
12/12/07 20:10:31.69
WinFormのデータバインディングはListViewが出てきた途端にどうにもならなくなるのが…

358:デフォルトの名無しさん
12/12/07 20:45:44.24
データバインディングは甘え

359:デフォルトの名無しさん
12/12/07 20:56:49.11
XULみたいに楽なのがいい

360:デフォルトの名無しさん
12/12/07 21:01:13.61
なんて読むの?クシュル?

361:デフォルトの名無しさん
12/12/07 21:02:08.29
ずーる
ゴーストバスターズの悪い神様から取ったみたい

362:デフォルトの名無しさん
12/12/09 17:28:59.80
無料版ではほとんど何もできないことがわかり即時撤退しますた

363:デフォルトの名無しさん
12/12/09 17:36:50.49
複数人での大規模な開発じゃなければ無料版で困ることはない。

364:デフォルトの名無しさん
12/12/09 20:58:43.18
FlowDocumentScrollViewerのスクロールっていじれないのでしょうか

365:デフォルトの名無しさん
12/12/10 08:31:11.43
html5 > flash > silverlight > WPF

366:デフォルトの名無しさん
12/12/10 19:58:46.36
flashは最下位だろ
あれは子供のオモチャ

367:デフォルトの名無しさん
12/12/10 19:59:46.33
HTML5以外のRIAプラットフォームに将来はない

368:デフォルトの名無しさん
12/12/11 00:24:05.02
HTML5で全て解決できるようになるの?

369:デフォルトの名無しさん
12/12/11 00:27:52.42
ActionScript3のWinAPIへの食い込み方見てると、
C#を超えてる部分もあるんだよな
特にマルチメディア関連

以下、股間に食い込み禁止

370:デフォルトの名無しさん
12/12/11 00:47:09.82
おっぱいにならいいんですね?

371:デフォルトの名無しさん
12/12/11 01:28:42.44
元祖ボンテージかぁ
胸熱だな

372:デフォルトの名無しさん
12/12/11 02:01:20.84
HTML5もまだ話半分って感じだよなあ
一蓮托生という気にはとてもなれない

373:デフォルトの名無しさん
12/12/11 02:16:41.58
JSはもう少しカッチリさせて欲しい。変態杉

374:デフォルトの名無しさん
12/12/11 02:17:28.43
変態JS…(ゴクリ

375:デフォルトの名無しさん
12/12/11 02:24:18.52
TypeScript使え
言語自体はC#より綺麗だぞ

376:デフォルトの名無しさん
12/12/11 04:21:09.22
Xamlのどこがスマートなん?
VMSもTriggerもビヘイビアもぜんぜんスマートちゃうやん・・・
もっとこうHTML+CSS+JSみたいにでけへんのん?なんでボタンやイメージの状態遷移だけでこんなめんどいねん、アホちゃうのM$?
Formのカスタマイズを100倍簡単にするか、WPFをもっとプッシュしろやボケェ!!

377:デフォルトの名無しさん
12/12/11 06:21:12.08
あんたかてアホや

378:デフォルトの名無しさん
12/12/11 09:10:01.16
HTML+CSS+JSがスマートだというのか???

379:デフォルトの名無しさん
12/12/11 09:14:08.11
HTML+CSS+JSばかり書かされて麻痺してるコーダーだろ
JQueryすげぇとか言っちゃうタイプ

380:デフォルトの名無しさん
12/12/11 09:58:26.00
タグ打ち込むのが既に面倒
*application1
*button1

button1*
application1*
みたいに書けへんやろか

381:デフォルトの名無しさん
12/12/11 11:57:30.89
HTML+CSS+JSは10人居たら10通りの実装になるからなぁ。アプローチ自体が違ったりとか。
XAMLは少なくともだいたいみんな同じになる。だりーけどな

382:デフォルトの名無しさん
12/12/11 12:29:58.62
よっぽど単純なものじゃないと同じにはならないと思うよw
stack使わない人もいるし

383:デフォルトの名無しさん
12/12/11 12:40:31.20
言葉が悪かった。xamlじゃなくてwpf。xaml自体のツリー構造はまぁ違うだろうけど・・w

384:デフォルトの名無しさん
12/12/12 00:28:10.94
リッチテキストボックスのスクロールって無効にできますか

385:デフォルトの名無しさん
12/12/12 17:38:13.86
ちょっと言葉足らずじゃない?

386:デフォルトの名無しさん
12/12/13 05:15:44.44
GUIだけWPFで作って中身C++とかもできんの?

387:デフォルトの名無しさん
12/12/13 08:59:03.67
直接C++(C++/CLIでない)からWPFを使うのは不可能。
C#やC++/CLIで橋渡しをすれば可能。C++/CLIはWPFのVSサポートが無いので本当にやるならC#。
コード量が倍増しメモリ破壊に悩まされることに見合う効果があるかといえばまず無いけどね。
長時間にわたってCPUフルにぶん回すタスクがあるならそこだけC++にするのはアリ。

388:デフォルトの名無しさん
12/12/15 07:58:50.46
今度もしかしたら、業務でWPFを使うかもしれないんですが、
Gridで千行とか二千行(もしかしたら万まで行くかも)を表示した場合、
IvyBridgeの内蔵GPUでは表示に耐えられない可能性とかってあるでしょうか?
WPFは表示はGPU依存だと聞いたので、CPUではなくGPUが足かせになるのかもと思っているのですが、
現状のGPUだと表示は気にしなくていいレベルなのでしょうか?
(3Dは使わないので、Grid以外、そこまでGPUにシビアな処理はする予定はありません)

389:388
12/12/15 07:59:34.01
すみません、sage忘れました。

390:デフォルトの名無しさん
12/12/15 08:15:33.49
Gridって多分DataGridのことだよね?

文字通りのGridというのはWPFではレイアウトに使うパネルの1つのことで
そのRowDefinitionが1000も2000も並ぶXAMLとか、まずあり得ないよね
多くても2ケタ程度だと思うし

DataGridとかListBoxとかの各行は、
画面に実際に映っていない部分は実体が作られていない
スクロールして画面に入ったところでその部分だけが実体が作られて
スクロールして画面からはみ出たら勝手に破棄される
(これがあるから逆に、消えてしまうものの状態を管理するのに、そこをMVVMで処理しようって話にもなる)

GPUの性能は、その部分に関してはほとんど関係ないと思う

391:デフォルトの名無しさん
12/12/15 08:16:08.04
数万行あったとしてそれをGPUで常に処理すると思ってんの?

392:デフォルトの名無しさん
12/12/15 08:38:18.71
>>390
普通に考えたらそうなるのかなと思うんですが、
今同じようなプログラムがRiaのFlexであるんですが、
(こちらに関しては開発をしているわけではないので中身はわかりません)
これが行数が増えるとすごく重くなるので、
WPFで作っても同じようなことにならないか不安で聞いてみました。

393:デフォルトの名無しさん
12/12/15 08:49:36.07
WPF期待してたのに全然盛りあがんねー

394:デフォルトの名無しさん
12/12/15 09:27:49.94
WPFにWinFormsのコントロールを貼ることができるから、
WinFormsのDataGridViewを使えば爆速だよ
まずはとりあえずデータグリッド貼っとけみたいなクソUIを何とかすることを考えるべきだろ

395:デフォルトの名無しさん
12/12/15 09:31:13.68
WinForm(笑)

396:デフォルトの名無しさん
12/12/15 09:33:06.96
データグリッドなんて使う時点でWPFのメリットなんかどうせ無いんだから
使うんならWinFormsのを使えばいいよ

397:デフォルトの名無しさん
12/12/15 09:40:14.02
なんかレベルの低い人みたいで嫌だよ

398:デフォルトの名無しさん
12/12/15 12:41:42.68
WinForm最強は同意。

399:デフォルトの名無しさん
12/12/15 13:03:48.94
みたいとか何とか
イメージで判断するなら全部そうしろよ
中途半端に他人に意見もとめんな

400:デフォルトの名無しさん
12/12/15 13:19:49.92
データグリッドなんかに頼ること自体がレベル低いだろ
こんなもんUIの敗北だ
WPFならItemTemplateでオサレに作れ

401:デフォルトの名無しさん
12/12/15 13:29:22.58
ダサくて使いにくくて評判悪いよ

402:デフォルトの名無しさん
12/12/15 18:17:15.33
WinFormダサイ

403:デフォルトの名無しさん
12/12/15 18:42:33.07
WinFormのねずみ色がもう恥ずかしいレベル

404:デフォルトの名無しさん
12/12/15 19:09:43.89
色に拘るようになったPGは用済み。

405:デフォルトの名無しさん
12/12/15 20:26:21.25
WinFormでも背景色ぐらい変えれるだろw
無意味に変えてもださいけどw

406:デフォルトの名無しさん
12/12/15 20:34:58.39
>>400は晒しあげる価値がある

407:デフォルトの名無しさん
12/12/15 20:52:38.44
大体において、OS標準から無意味にデザインやUIを変えてあるソフトは
嫌いだな。よほどセンスと使い勝手がいいか、変えてある事になんらかの
意味を見いだせるようなものであれば、受け入れるけど

408:デフォルトの名無しさん
12/12/15 21:22:53.58
いまやOSが勝手に変える時代だしな
e糞plorerにリボンとかあほちゃうかと

409:デフォルトの名無しさん
12/12/15 21:27:16.91
いまだにリボンに馴染めない老害w

410:デフォルトの名無しさん
12/12/15 21:29:09.54
Explorerのリボンは控え目で使いやすいだろ
ただのアイコンがでかいメニューじゃん

411:デフォルトの名無しさん
12/12/15 21:51:39.47
確かにデフォルトの設定だと本当に見やすくなったメニューそのものだね。
縦にべろんって出るんじゃなくて横に出るんだからね。
地味に「コマンドプロンプトを開く」や「PowerShellを開く」の項目がありがたい。
っていうかエクスプローラーにもクイックアクセスツールバー付いてたんだな。
今気付いた。ここまで強力になってれば別途ファイラー入れる必要ないな。

412:デフォルトの名無しさん
12/12/15 22:00:17.34
Explorerのメニューは非常に見やすくて旧来のメインメニューよりずっと良い
全部このスタイルになればいいと思う

413:デフォルトの名無しさん
12/12/16 00:27:36.97
一覧性のないリボンが使いやすいってどんだけw
狭い画面であんなに場所とりやがって。

414:デフォルトの名無しさん
12/12/16 00:30:15.98
Explorerのリボンは折りたたんでおくのが前提で作られてるから
本当にただの視認性の良いメニュー

415:デフォルトの名無しさん
12/12/16 00:36:21.49
いや視認性が悪いんだが、あれ。人間工学無視しすぎ。

416:デフォルトの名無しさん
12/12/16 01:56:41.22
リボンは倉庫で例えると、目録を取り上げられて、
倉庫からなんか取ってこい的な無茶な仕様。バカかと。どこにあるかわかんねーよ

417:デフォルトの名無しさん
12/12/16 02:05:33.40
お前のたとえの方が無茶だよ

418:デフォルトの名無しさん
12/12/16 02:09:15.93
お前には難しかったようだな。もはや哀れだな

419:デフォルトの名無しさん
12/12/16 02:14:47.06
そうそう。項目探すの頭を必要以上に使わないといけない。

420:デフォルトの名無しさん
12/12/16 06:46:25.41
>>415
人間工学考えたらリボンに行き着くよ

421:デフォルトの名無しさん
12/12/16 07:04:07.62
>>413
リボンはプルダウンのメニューよりも格段に一覧性は上がってるぞ
ワイド画面を活用して狭い画面を有効活用している

422:デフォルトの名無しさん
12/12/16 07:06:52.61
そんなトンデモ誰が信じるんだよw

423:デフォルトの名無しさん
12/12/16 07:45:40.85
トンデモって・・・事実やん
お前リボン使った事ないだろ

424:デフォルトの名無しさん
12/12/16 08:04:55.47
ribbon で reborn した interface

425:デフォルトの名無しさん
12/12/16 08:14:56.20
OpenOfficeがリボンの真似したときは総スカンだったけどね。
URLリンク(japan.zdnet.com)

426:デフォルトの名無しさん
12/12/16 08:22:23.15
リボンの良さが理解されてからはMSOffice以外でもリボン採用が進んでるね
Mac版MSOfficeのリボンUIも絶賛されてるし

427:デフォルトの名無しさん
12/12/16 08:25:27.43
2009年www

428:デフォルトの名無しさん
12/12/16 09:23:52.88
シンプルな疑問だけど自作アプリにリボン実装する場合
アイコンはどうしてるんだ?

429:デフォルトの名無しさん
12/12/16 09:25:26.94
リボンでもなんてもいいから消せるオプションだけはつけてくれ

430:デフォルトの名無しさん
12/12/16 09:29:01.76
じじぃは最小化して使えば良いと思うの


























Vistaの罪は重い

431:デフォルトの名無しさん
12/12/16 09:55:33.88
ノートでwin7上でofficeだと縦が限りなく狭い

432:デフォルトの名無しさん
12/12/16 10:02:08.82
なんでノートはあの横長のサイズが流行ってるんだろうね
最近は縦1024以上の探すのが大変

433:デフォルトの名無しさん
12/12/16 10:25:36.73
地デジ化に伴う一般人の大量のテレビの買い替えで、
一般人の画面に対する感覚が、
それまで4:3が標準だったところから16:9が標準に変わってしまった
それが一番の原因かな…?

で、持ち運べる14型15型くらいでフルHDの1920×1080とかそれ以上とかにすると
ドットが細かすぎて見づらかったりするんでドットサイズ的には1366×768くらい
でもこれだと画面狭すぎるんだよな。特に縦。
特にあれでリボン仕様のOffice使えとか拷問に近いぞw

まぁOfficeワークはデスクトップ機で、でかい画面でフルHDでやってくれってことかな

434:デフォルトの名無しさん
12/12/16 10:30:50.62
高DPIが普及するとか言ってたのはどうなったんだ

435:デフォルトの名無しさん
12/12/16 10:31:00.57
血出痔化って日本しかやってないのに
世界中のモニタが影響受けるんだな

436:デフォルトの名無しさん
12/12/16 10:33:30.95
> 血出痔化って日本しかやってないのに
えっ

437:デフォルトの名無しさん
12/12/16 11:03:14.38
>>428
自分で作ったよ

438:デフォルトの名無しさん
12/12/16 13:39:49.71
>リボンの良さが理解されてからはMSOffice以外でもリボン採用が進んでるね

うそつけ

439:デフォルトの名無しさん
12/12/16 13:54:11.23
どんだけ世間知らずなんだ
他のOfficeでもOffice以外のソフトでも、
フリーソフトでも市販ソフトでもリボン見かけること多くなったぞ

440:デフォルトの名無しさん
12/12/16 14:02:43.91
3DCGソフトでもリボンUI使われてるね

441:デフォルトの名無しさん
12/12/16 14:03:04.75
そういや何気に4.5から標準でWPFにリボンコントロール入ったんだよね

442:デフォルトの名無しさん
12/12/16 14:05:25.76
4.5採用するとXP切ることになっちゃうんだよなー
早くXP氏んでくれないかな

443:デフォルトの名無しさん
12/12/16 14:15:42.08
どうせXP切るならD3D1xベースにならねえかなぁ
D3D9だとCanvasライクな重描画をDirect2Dに逃がすことすら辛い…

444:デフォルトの名無しさん
12/12/16 16:03:27.75
XP切ったら仕事がなくなるわw

445:デフォルトの名無しさん
12/12/16 18:34:07.35
俺の周辺だとやっとXPは終焉に向かってるけどなあ
業務アプリメインでコンシューマはあまりやらないからかもしれないけど

446:デフォルトの名無しさん
12/12/16 18:42:24.14
ソフトウェアはともかく誰がOSのサポートすんだろ

447:デフォルトの名無しさん
12/12/16 19:27:43.12
終わったOS使っちゃ駄目だろ

448:デフォルトの名無しさん
12/12/16 20:01:23.36
XPはこれから始まるんだよ。アクチがなくなるからな。

449:デフォルトの名無しさん
12/12/16 21:14:44.18
8使っちゃうと7やxpには戻りたくないわ
マウスでもこれだけ快適ならタッチだともっといいんだろうな

450:デフォルトの名無しさん
12/12/16 21:16:38.64
流れぶった切ってすいません

ListViewでスクロースされてどのItemまで表示されたか知りたいのですが
そういったことは可能でしょうか?
Itemのプロパティのセッター監視して・・・とやってみたら、実際に表示される
少し前に値を取りに来て(あたり前ですが・・・)意図した形になりません
何かいい方法あればアドバイスいただけると助かります

451:デフォルトの名無しさん
12/12/16 21:26:16.55
アクチがなくなった所で著作権は消えないしプロプラでなくなるわけでもない
第三者がサポート会社立ち上げるのは無理があり、フォローもなし
1年も経てば30分で色々なウンコに感染するゴミ箱と化す

452:デフォルトの名無しさん
12/12/16 21:51:03.80
>>443
そのD3D1xも切られるんですがwww

VSのスレ読んで来いよ

453:デフォルトの名無しさん
12/12/16 21:55:02.29
D3DXは廃止

454:デフォルトの名無しさん
12/12/16 21:55:32.83
の間違いだった

455:デフォルトの名無しさん
12/12/16 21:57:31.16
おまえらにFairiesの秘密を教えてやろう。

デブが4人いる。

456:デフォルトの名無しさん
12/12/16 22:03:07.95
>>450
坊やがあと1週間いい子にしてたら、きっと願いが叶うじゃろうて
Ho Ho Ho

457:デフォルトの名無しさん
12/12/16 22:20:58.52
>>450
グーニーズだっけ?

458:デフォルトの名無しさん
12/12/16 22:34:19.85
>>450
基本的に無理そうだけど、ListViewItemのOnRenderをオーバーライドしたら、
どうにかできないかね。itemでどう発生するのか知らないけど・・

459:450
12/12/16 23:15:00.02
>>456-457
ごめん、なんかのネタなのかも知れんけど、全然わからん
ちなみにもう1週間以上悩んでますw

>>458
やっぱ直接は無理なんかね?
もしくは表示されているItemを取得するとかでもいいんだけども
指定Itemまでスクロールすることはできるんだけどなぁ・・・

OnRenderか
ちょっと試してみます
アドヴァイスありがとう

460:デフォルトの名無しさん
12/12/16 23:25:59.65
ListViewItemの側から確認するとか

461:デフォルトの名無しさん
12/12/16 23:35:31.35
>>460
ごめんなさい、分かりません
「ListViewItemの側から確認する」とは具体的にどういうアプローチですか?
ListView内でのItemの位置が取れたりするということでしょうか?

462:デフォルトの名無しさん
12/12/17 00:39:23.80
ごめんそっちは勘違い
URLリンク(social.msdn.microsoft.com)
最初のアイテムはVirtualizingStackPanel.VerticalOffsetで
表示できるアイテム数はVirtualizingStackPanel.ViewportHeightで取れるね

463:デフォルトの名無しさん
12/12/17 15:47:31.46
URLリンク(www.microsoft.com)
これってWindows8だとおかしくなったりしません?

464:デフォルトの名無しさん
12/12/17 18:26:50.40
昔2chブラウザもどきつくってたとき
どのItemが表示されてるかいろいろやったけど
簡単にできるのはなかった
難しいアプローチはあるけど実用的じゃなかった

465:デフォルトの名無しさん
12/12/17 18:53:11.33
>>463
タイトルバーがクラシックになるから.NET 4.5付属の使え

466:デフォルトの名無しさん
12/12/17 22:34:03.36
>>464
>>462はうまく動かんの?

467:450
12/12/17 22:43:48.02
>>462
で、できたよ!ママン!!
ありがとうございます
助かりました

>>464
私も実は2chブラウザもどきつくってました・・・^^;
上のやり方簡単でしたよ
ただ、明示的に取に行かないといけないので、いつとるかがちょっと考える必要ありますけど
表示切り替え時とかにとりに行くと、下まで一度いった後戻ると、一番下が既読にマークできませんしね

468:デフォルトの名無しさん
12/12/17 22:50:28.81
VirtualizingStackPanel内蔵じゃなかったんだよね

469:450
12/12/17 23:02:23.67
>>468
それは何か理由があってですか?

470:デフォルトの名無しさん
12/12/17 23:58:19.15
flowdocument内の一部RunやSpan要素を右寄せにすることってできますか?

471:デフォルトの名無しさん
12/12/18 02:38:12.78
>>467
その調子でVirtual...になんかいべんとないかね?


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