1 名前:デフォルトの名無しさん mailto:sage [2010/05/21(金) 15:27:16 ] 一向に普及しないユーザーインターフェースシステム Windows Presentation Frameworkについて語るスレ。 .NET4.0もリリースされたけど別に盛り上がってはいないよね…。 Visual Studio 2010 ttp://www.microsoft.com/japan/msdn/vstudio/ Microsoft .NET Framework 4 (Web インストーラー) www.microsoft.com/downloads/details.aspx?familyid=9CFB2D51-5FF4-4491-B0E5-B386F32C0992&displaylang=ja Microsoft .NET Framework 4 (スタンドアロンインストーラー) www.microsoft.com/downloads/details.aspx?familyid=0A391ABD-25C1-4FC0-919F-B21F31AB88B7&displaylang=ja 関連スレ Microsoft Silverlight その6 ttp://pc12.2ch.net/test/read.cgi/tech/1271580489/ 過去スレ WPF(XAML, XBAP, .Net3.5)GUIプログラミング Part5 pc12.2ch.net/test/read.cgi/tech/1261879110/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 ttp://pc12.2ch.net/test/read.cgi/tech/1245384489/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング Part3 ttp://pc12.2ch.net/test/read.cgi/tech/1231506876/ WPF(XAML,XBAP,.NET3.5)GUIプログラミング ttp://pc11.2ch.net/test/read.cgi/tech/1211453941/ 【新GUI FW】WPF(XAML,AVALON,.NET3.0)【重い?】 ttp://pc11.2ch.net/test/read.cgi/tech/1162950198/ コードを貼る場合は以下のサイトの利用をお勧め。 run codeのチェックは外しておきましょう。 ideone.com/
175 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 13:33:30 ] EEもあるけど、設定変えないと出てこなかった気がする オプションのツールのとこ。
176 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 13:38:25 ] えーと、メニューからツールのオプション選んで 左下の全ての設定を表示にチェック入れて 一番上のプロジェクトおよびソリューションの全般選んで ビルド構成の詳細を表示、にチェック入れる。 ツールバーに出てこなかったらツールバーも編集いるかも
177 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 13:39:00 ] >>175 何から何まで恐縮です。 ツール - ユーザー設定の中に構成マネージャを見つけたので、 めにゅーへ追加しました。 しかし、グレーになっており選択できないようです。 まだ頑張って調べ中ですが、取り急ぎ中間報告いたします。
178 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 13:43:19 ] >>176 見逃していました。その通りにしますと、グレーにもならず、 ビルドメニューに構成マネージャが新たに追加されました。 実行も問題なく出来ました。 数カ月の謎が一気に解けました。皆様本当にありがとうございました。
179 名前:163 mailto:sage [2010/06/07(月) 14:08:59 ] たーすけーてくーださーいorz
180 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 14:13:13 ] うるせーな適当に答えるぞ ・値の検証 ValidationRuleでやれ そのためにあるんだろーが ・モデル MVVM
181 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:13:15 ] >>166 Labelの方が軽い、というのはなんか変だね。 TextBlockはFrameworkElementから直接継承していてずっと軽い。 LabelはContentControlであって、Stringを放り込んだ場合、自動的に内部にTextBlockを作る。 メモリリソース、実行効率から言ってLabelが軽いはずはないんだけど。 一体どうなってんのかね?
182 名前:デフォルトの名無しさん mailto:sage [2010/06/07(月) 22:20:30 ] レイアウト関連のプロパティのデフォルト値がTextBlockとContentControlで違うとかじゃね
183 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 01:05:40 ] やっぱり遅さの元凶はDependencyPropertyとリフレクションなんかなあ。 ただでさえマネージドコードは遅いのに。
184 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 06:58:44 ] だろね。
185 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 11:07:39 ] そんなことがボトルネックになるようなアホなつくりにはしないだろ やってることがもともと非常に複雑だから仕方ない 仕様にハードの性能が追いついてないんだよ
186 名前:163 mailto:sage [2010/06/08(火) 11:24:31 ] >>180 どもです、やっぱりValidationRuleでやったほうがよいのですね。 もでるについてはMVVMでググって見ます。 ありがとうございました。
187 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 12:38:17 ] >>185 ハードを蔑ろにした糞仕様ってこと?
188 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 12:40:39 ] まあDirectXとかは先に仕様ができてからハードがついてくるしなあ
189 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 18:24:12 ] グラフィックレンダリングに関しては、今後のハードウェアの性能が上がれば描画も早くなろうが・・。 ただ、バインディングやらレイアウト処理やらのマネージドコードで書かれた内部メカニズムに関してはCPUのコア性能があがらんことには どうしようもない。WPFのViewレイヤーを担当する部分は(基本的には)分散できずにシングルスレッドで走らすしかないから CPUのコア数があがってもどれほどの向上が見込めるのやら・・・。
190 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 18:28:22 ] 今の実装がシングルスレッドだからって、将来にわたりマルチスレッドで走らないなんて事はないだろ。
191 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 18:41:39 ] いや、WPF開発チームは当初マルチスレッドも許容するようなGUIライブラリに組むことを考えて設計したけど あまりに複雑になりすぎたので断念した、という経緯がある。
192 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 19:12:01 ] またそのうちチャレンジするだろ。
193 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 20:10:43 ] COMとの連携なんかでSTAThreadにせざるを得なかったとか書いてあった希ガス
194 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 21:44:19 ] yet another doomed libraryてことにならんことを祈る。
195 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 22:57:33 ] さわってておもしろいけど、おもしろいでおわっちゃう
196 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 23:40:28 ] FlowDocumentって作成したスレッドからしか触れないんだな。 別のスレッドのオブジェクトを操作するには、BeginInvoke使えとか言ってるけど、 ビューアーコントロールはそんなもん使ってくれないし。 データーを裏でロードしたり、構築したりしたい事って結構あると思うんだけどな。 ググったら、MemoryStream使って渡す例があったけど、 実際にやってみたら遅くて本末転倒だった。
197 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 23:52:53 ] CPUコア数の増加に進んだ Intel が悪い。 本当なら今頃 16GHz のCPUが出ている筈なのに。
198 名前:デフォルトの名無しさん mailto:sage [2010/06/08(火) 23:57:39 ] どこのCPUメーカーもそうなんじゃない?結局技術的に頭打ちになってるんじゃなかろうか・・・。
199 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 00:11:52 ] ネタにマジレスされても困るが、並列プログラミングの難易度の問題から コア数増えてもクロック数あがらないとあまり効果でないってのは分かりきったことで このままコア数増え続けていっても有効活用できないだろうし、CPU以外の 部分に足ひっぱられるだろうしで、何かしらの打開策はいるんじゃなかろーか。
200 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 01:43:08 ] WPFもCOMコンポーネントを捨てればマルチスレッド許容できたが 現実問題として捨てられないから妥協した、みたいな書き方だったよね マルチコアに進んだからシングルコアの性能が上がらないんじゃなくて 逆じゃないっけ。 シングルコア性能向上の限界が見えたからマルチコアに進んでるんじゃないの
201 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 07:46:11 ] そのうちCPUは太陽表面並の温度になるってギャグがあったなあ
202 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 11:31:16 ] 単位面積あたりの発熱量が原子炉を越えたじゃなかったかな?
203 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 12:03:25 ] Prismでアプリケーション設定やユーザー設定を、モジュール間でやりとりするのってどんな方法がありますか? Unityコンテナに登録して、各モジュールでインスタンスを取り出すとかかなって考えてますが、いいやり方ってありますか?
204 名前:デフォルトの名無しさん [2010/06/09(水) 23:38:58 ] メインのウィンドウから、別の Window を ShowDialog() で呼び出し、 モーダルとして表示しています。 当然、そのWindowの×ボタンをクリックすればWindowは消せるのですが、 Windowの外の領域をクリックすることでもそのWindowを消したいです。 WPF用デバッグツール snoop なども使ってみましたが、 領域の外をクリックしたことを取得する方法は分かりませんでした。 可能でしたら、手段をお教えください。
205 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 23:47:00 ] フォーカスがなくなったよイベントでCloseじゃだめかのう。
206 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 23:48:11 ] >>204 カーソルをキャプチャするんだよ
207 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 23:48:34 ] 最前面じゃなくなったよイベントがあったようななかったような
208 名前:デフォルトの名無しさん mailto:sage [2010/06/09(水) 23:50:01 ] モーダルっつってんだろクソどもが!
209 名前:204 mailto:sage [2010/06/09(水) 23:56:02 ] >>205 私も同じことを考えたのですが、 モーダルの場合はフォーカスを失ったとは見なさないようです。 >>206 調べてみます。ありがとうございます。 >>207 最前面かどうかの判定では難しそうです。
210 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 00:05:38 ] モーダルの場合でそのような挙動をするダイアログボックスはあまりみたこがありませんが・・・ モードレスへの変更を検討すべきではないかと思います。
211 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 00:14:37 ] 非アクティブになったら消えるウィンドウがモードレスかモーダルかなんて 利用者から見て違いあるかな?
212 名前:204 mailto:sage [2010/06/10(木) 00:15:59 ] >>210 アドバイスありがとうございます。 現在、以下のようなストーリーを考えているのですが、 モードレスでも記述かのうでしょうか? ・メインウィンドウから他のWindowを表示 ・メインウィンドウは Window が閉じられるまで操作停止 ・Windowには OK と Cancel があり、DialogResult でいずれかを受け取る ・OK or Cancel により、メインウィンドウにてその後の動作を変える よろしくお願いします。
213 名前:204 mailto:sage [2010/06/10(木) 00:17:25 ] すみません、追記です。 Window の外をクリックした場合も、(例えば)Cancel であると見なしたいです。
214 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 01:31:53 ] ユーザーエクスペリエンスの破壊を目的とするわけか
215 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 01:38:32 ] WPFで簡単なもぐら叩きを作っているのだが、 1分間Gridがクリックされなかったらメッセージボックスを 表示することってできる
216 名前:デフォルトの名無しさん [2010/06/10(木) 01:53:52 ] >>215 スタートしたあと1分間のカウントアップでもカウントダウンでもはじめて クリックがあればカウントターをリセットすればいいだけちゃうの?
217 名前:215 mailto:sage [2010/06/10(木) 02:12:26 ] >>216 あぁ、なるほど。ありがと。
218 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 02:19:20 ] カウンターリセットとかどうやんの? WPFのタイマーっつーと DispatcherTimer を思い出すのだが、 この Completed で MessageBox呼ぶようにしても Intervalのキャンセルなんてできるの?
219 名前:デフォルトの名無しさん [2010/06/10(木) 02:25:49 ] >>218 WPFのタイマーはよくしらんが標準のタイマーをうまくコントロールできないなら タイマーから一定サイクルで呼び出される関数で自分の用意したカウンター を+(もしくは-)にしてってやればいいだけちゃうの? タイマーとしてみるよりは一定サイクルを刻むクロックとみなして・・・
220 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 02:49:14 ] >>218 カウンタっつーか普通にタイマを一度止めて再開すれば良いんじゃね?
221 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:05:20 ] みなさん、WPFをどうやって勉強してます?MVVMとか。 やっぱり、CodeProjectかCodePlex?
222 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:07:38 ] このスレ見て
223 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:22:06 ] 3割質問、1割回答、6割がただの煽りのスレで勉強とな
224 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:23:26 ] ヘルプ見りゃ大体判る
225 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:24:15 ] でも、WPFって大規模開発でしか使われてないのかも。 数人で作るんだったら、フォームで作っても問題無いような 仕様(それか予算)しか出てこないでしょ。 このスレでも出てきたPrismとか、そんな感じ。
226 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:52:24 ] WPFのTextBlockやListViewが使いたくなるような要求は結構出てくるよ 「WinFormsだと結構手間がかかるんですよねー」 「でも、WPFで1から作る予算はありませんねー」 で、結局仕様には盛り込まれず、WPFは使われないんだけど。
227 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:54:44 ] しかし、この先GPUによるアクセラレートはWPFでしか行われなくなりそうなのに、 いつまでもFormってのもなあ。
228 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 10:55:31 ] 今度、1から作るプロジェクトが始まるんで、WPFで作ろうかと調査中。 MVVMとか、他人に分かるんだろうか‥‥
229 名前:デフォルトの名無しさん [2010/06/10(木) 10:58:14 ] >>228 推し進めるくらいなら布教してまわればいいじゃんw それができないならwinformでやるしかないような
230 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:01:29 ] >>229 布教とかめんどくさいじゃん。 欲しいのは金と技術であって、正直、他人のことに興味無い。
231 名前:デフォルトの名無しさん [2010/06/10(木) 11:03:40 ] このスレの状態とネットで検索した状態を見ればおおよそ回りの力量とか状態は把握できそうな物だと思うが・・・
232 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:04:12 ] >>228 とりあえず採用する前に、パフォーマンスの評価だけはやっといた方がいいよ。 予想以上に遅いから。
233 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:05:39 ] このスレって、本職の人多いの? 4割が学生、4割がサンデープログラマー、1割がマイクロソフトの人、 1割が通りすがりの人、ぐらいにしか思ってないんだけれど‥‥。 うちみたいなフリーダムな場末の会社じゃないと、仕事で2chとか無理でしょ。
234 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:06:43 ] >>232 そんなに重いかなぁ。 SIだから、動作環境指定できるので大丈夫。
235 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:08:33 ] 表示されてるコントロールの量が多くなるとすんごくトロくなるね
236 名前:デフォルトの名無しさん [2010/06/10(木) 11:09:56 ] >>234 ああ糞SI様か 下に負担だけはかけないでください 新しいことやるならそれなりに予算をください
237 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:11:47 ] >>236 嫌なら下りてください。 代わりはいくらでも居るんだから〜。
238 名前:デフォルトの名無しさん [2010/06/10(木) 11:12:53 ] SIが目をつけるってことはWPFは糞でいいな Javaなんかも実際そうなってしまったし
239 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:17:06 ] Javaはまだまだ使われてるだろ? ベンダーロックイン出来ない公共系はJava指定ばかりだ。
240 名前:デフォルトの名無しさん [2010/06/10(木) 11:19:15 ] Javaは第2のCOBOLになりそうだな
241 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:23:12 ] それは、長い間、金になるってことでは?
242 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:23:47 ] VB6.0からの移行は.netじゃなくて、Javaにする例が結構多いみたいだな。
243 名前:デフォルトの名無しさん [2010/06/10(木) 11:25:12 ] >>241 金にもなるけど未だに使うのかよとやっかまれつつ
244 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:42:17 ] AndroidやiPhoneでもXAMLが使えればなあ
245 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:43:15 ] html5でいいよ
246 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 11:44:29 ] AdobeがFlashのHTML5コンバーターだせばいいんじゃね?
247 名前:デフォルトの名無しさん [2010/06/10(木) 11:45:00 ] Flash以上に中身丸見えだけどな
248 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:01:45 ] WPFは単純に重いというより、何をすると重くなるのかが知られてないんだと思う WinFromsだって、大量にコントロールを貼って、節操無くInvalidateしまくったら重いだろ WPFの場合、測定と配置の仕組みを理解していないと 再測定と再配置の嵐で遅くなる
249 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:08:55 ] >>248 そこんところをやさしく解説してください
250 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:22:15 ] SharedSizeGroup は重くて使えないよねぇ。下手すりゃ、整列してるのがアニメーションで見られるぐらい。 結局カスタムレイアウト使うことにしたが、何かコツあんの?>>248
251 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:27:26 ] >>234 端末200台あるような場合でも最新のハイスペック揃えってくれって言えるのはSIer様だけだよ、まったく。 TPOというか、コスト削減につなげるためにシステム入れるってことちょっとは弁えて欲しいぜ。
252 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:32:31 ] >>251 今時、WPFが軽く動く端末の金額なんて、人件費に比べれば誤差だろ。 そこでコスト削減とか訳のわからないこと言っている企業は、 潰れるべき、っていうか、もう延命しようとも詰まれてると見るべき。
253 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:35:19 ] いくらハイスペックにしても、シングルスレッド性能は上がらないから、 遅いままなんだけどなあ。 GPUもあんまり効果無いみたいだし。
254 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:35:24 ] >>248 よろしい 今すぐ纏めなさい
255 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:35:55 ] つーか、1から作るって書いてあるじゃん。 セキュアな状態が必要だから、ネットワークから敷き直すの。 だから、端末代なんて誤差。 別に、SSLでも良いと思うんだけれどね。
256 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:38:15 ] つーか、WPFが遅いって言っている人は、自分の技術の無さを自覚するべき。 駄目な奴は何を作っても駄目。いつの時代も遅いって言っている。
257 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:41:06 ] いつまでも他人のせいだよな お互いにw
258 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:43:13 ] >>256 FlowDocumentが重いんですが、速くする方法を教えて下さい
259 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:43:36 ] >>250 再配置の連鎖が起きないように気をつけるだけだよ。 SharedSizeGroupなら、 動的にサイズが変わるコントロールや動的に生成されるコントロールを含む部分には SharedSizeGroupを適用しないように気をつける。 それと、カスタムレイアウトは別に悪くないんじゃない? どうせ簡単に作れるんだし。
260 名前:デフォルトの名無しさん [2010/06/10(木) 12:45:49 ] >>256 余計なこといわなきゃいいのに 駄目と切り捨てた以上はテクニックを披露していけよ そしたら認めてあげるわw
261 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:50:47 ] つーか、まず、その遅いというソースをうpするしかないと思うんだが‥‥。
262 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:56:25 ] MSDNや書籍を含めてろくなドキュメントが無いんだよな どれもMSDNのチュートリアル止まり 残念なことに、 配置と測定に関してはMeasureOverride、ArrangeOverrideで検索して 断片的な情報を集めて行くのが一番早い
263 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:56:32 ] つーか、NDAとかでソースが出せないのだったら、 CodeProjectで参考にした記事でも良いよ。 そっから検討すれば良いから。
264 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 12:57:37 ] どうも、FlowDocumentのHyperlinkが、上をマウスカーソルが通過するだけで 全体の再配置が起きてるようで困ってる。 色変えや、アンダーバーがいけないのかと思って変わらないようにしてみたけど、効果なし。 継承してOnMouseEnterを潰してみたけど、効果なし。 カーソルがリンクの上を通過するたびに一秒くらい固まる。 同等な物をhtmlで表示した場合は何の問題も無いのになあ。
265 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 13:05:55 ] 怪しいコントロールがわかってるときは、 そのコントロールをカスタムレイアウトの中に入れて、 強引に配置動作をカスタマイズしてしまえばいい しかし、標準のTextBlockですら変な挙動を見せるので この手法が役に立つという始末 フレームワークのセンスはいいけど、 個々のコントロールに品質は悪すぎですよ・・・
266 名前:デフォルトの名無しさん [2010/06/10(木) 13:07:26 ] htmlなどをヒントに作ったであろうxamlがなぜここまでむごいのか
267 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 13:56:26 ] WPFは重くないって人は ・恵まれたハード環境でしか動かしていない。 ・ラベルとテキストボックス貼っただけのしょうもないものしか作ったことがない。 ・ただの煽り のどれかでしょ。>>248 みたいに何かをすると重くなる、という言い方ならともかく、 ただ一言重くないなんてただの無知。
268 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:00:25 ] StackPanelにFlowDocumentを持つUserControlを100個近く表示させてるけど重くないよ
269 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:01:37 ] Atom270で開発しているおれに謝れwメモリは2GBだけど。 開発環境はおもたいけど、WPFアプリケーションはまあそこそこのレスポンスは発揮してますよ。 ぬるぬるはうごきませんが破綻しないレベルです。
270 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:06:13 ] まぁ、速度に鈍感というか寛容な人もいるよね。
271 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:06:33 ] 「恵まれたハード環境とWPFがあれば多少無茶をしても重くならない」 そう思っていた時期がありました 実際は明文化されていない作法みたいなのがあって、 それから外れるとどんなハードだろうと遅くなる
272 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:13:01 ] >>261 msdn.microsoft.com/ja-jp/magazine/dd483292.aspx の「期待外れのパフォーマンス」という項のサンプルコードをだな。
273 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:13:48 ] >>271 > 明文化されていない作法みたいなの これから改良される(変わる)可能性があるから明文化されてないんですかね?
274 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:14:47 ] 具体例を示して、この部分ハードウェアの性能に影響を受ける、と言うならともかく 単にハード云々を言っても説得力は無いわな
275 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:22:43 ] >>272 なんか極端すぎてあんまり参考にならない例だな
276 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:28:08 ] >>275 オーケー、マイブラザー。 リストボックスにたかだか10,000個のアイテムを追加しただけのコードだ。 <Window x:Class="WpfApplication1.Window1" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation " xmlns:x="schemas.microsoft.com/winfx/2006/xaml " Title="Window1" Height="300" Width="300"> <Grid> <ListBox Name="_listBox" ItemsSource="{Binding}" ScrollViewer.CanContentScroll="False"/> </Grid> </Window> namespace WpfApplication1 { public partial class Window1 : Window { public Window1() { InitializeComponent(); this.DataContext = new int[10000]; } } }
277 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:29:35 ] MSのライブラリではいつもの事なんだけど、 シンプルな書き方と最良の書き方が一致してないんだよね シンプルな書き方 = 最良な書き方 って発想はRoR以降に広まったものだから 2001年から設計されたWPFに求めるのは酷かもしれないけどさ
278 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:34:23 ] リストボックスに単純に1万も項目追加したら、 WPFに関係無く重くなるんじゃね? そもそも、そんな設計してる時点でドキュソだろ。 新卒しかしないって。
279 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:37:32 ] >>278 ScrollViewer.CanContentScroll="False" を消せば1万行追加しても早いわ。 言い訳ばっかりしてないで包茎の皮切り取って来い、チンカス。
280 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:43:21 ] だいたい、過負荷テストぐらいしないのかよ。 テーブルに100件ぐらい追加して「パフォーマンスに問題なし」とかほざいて納入しては 数年後に100万件超になってきてパフォーマンス障害が出たので何とかしてくれ、なんてなきつくアホ多すぎ。 どうせSIer様は買い替えの時期です、とかDQNなこと言うんだろうが。
281 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:44:22 ] Formsでいう、SuspendLayoutがWPFに無いから、 無くても大丈夫なように設計されてるのかと思ったら、 全然そうじゃなかったという・・・
282 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:51:22 ] WPFは常時SuspendLayoutしてるようなものだよ。 ただし、WinFormsとは重くなる原因が異なるので WinFormsだと○○すれば軽かった みたいな経験は通用しない。
283 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 14:54:52 ] まぁ大抵の場合WPFを止めるという選択肢しか無いけどな。
284 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:02:07 ] >>280 そりゃ要件定義の段階でその程度の仕様要求する方が悪いぞ そんなところまで面倒見るわけねえだろ
285 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:03:33 ] 典型的なおいしい仕事とカモの客だな。 そういう所がもっと増えればよい。 無茶も言わなくなる。
286 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:06:20 ] 相変わらず人のせいですね お互いに
287 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:08:51 ] >>284 絵に描いたような典型的なSIerさまでワロス
288 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:10:40 ] >>280 パフォーマンステストは、100万件はやるだろ、普通。 1億円ぐらい貰っているならば。 100万件がDBのある種の性能閾値だからな。 つーか、データの件数が何百万なのかは関係無いだろ。 WPFの話なんだから。 ビジネス層で何百万あろうと、UI層へそのまま持ってくるのが 頭おかしいって話。 百万件を同時に表示して処理できるユーザがいるのかよ。 件数が多いですが表示して良いですか?さらに絞り込みますか? てな画面遷移を入れれば、済む話だろ? そこで、必要に迫られて表示OKを選ぶ客は、 何分待たされても文句言わないよ。
289 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:12:15 ] >>287 何か文句があるのかよカモ ツーといえばカーで作って欲しいなら自社開発してろ
290 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:14:15 ] あれだ、Googleの検索結果に”約1,000,000件”と表示されていたとして 実際に100万件表示されてるかっていう
291 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:17:36 ] そうカッカするない
292 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:19:20 ] なんで100万件の一括表示なんて変な話になってんの? 画面数ページレベルの表示でも十分重いのに。
293 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:21:38 ] >>288 その「多いですが表示して良いですか?」の閾値が多いか少ないかの話だろ。 「100万件」はテストの話で出しただけで、WPFとは関係無いところで言ったのは確かだが。 SQL SERVER Management Studio じゃテーブルの直接編集が「先頭200行表示して編集」なんてメニューになりやがった。 >>289 生憎とSIerさまとのお付き合いはさせて頂いておりませんw
294 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:25:09 ] 100万件の話は、データ量増えてきたことを全く考えずにインデックスはらなかったり腐ったSQL書いてる奴がいるって話で、 それと同じで、たかだか、数十行のデータ表示させて重くないとか言ってんじゃねーよ、と言いたかっただけだ。
295 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:26:53 ] なんかWPFのパフォーマンスに問題がある事がばれると、 凄く困る人がいるみたいだな。 ロクなテストもせずに、導入決定しちゃった人か?
296 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:27:52 ] 数十行のデータ表示させてってのは違うな。 実際、Virtualizing が効いてれば1万行でも軽いわけで、「たいした処理もせずに重くないって言ってるだけ」と。
297 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 15:32:38 ] だから、重いと言っている奴はソース出せと言っているのに。 >>276 は1万件で重いって言っているし、 >>292 は数ページで重いって言っているし。 少なくとも、数ページで重いとは全く思わないが。 つーか、全世界で高給取りのプログラマで使っている奴がいるのに、 日本で日本人しか使わないコード書いている零細ソフトハウスが、 ソースも無く重いとか言っても、低学歴低所得の僻みにしか聞こえんだろ?
298 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:26:23 ] せっかくソース提示してやったのにアンカーまで出しておいて無かったことにすんのなw 軽い処理だけ走らせてほら重くないでしょ、ってかww メッセージボックス表示してGDIのどこが重いんだ、DirectXいらんでしょ、とか言ってるレベル。 WPF は重いけど、重くならないような仕掛けや仕組みを提供してるだけ。 そこから外れる(しかも簡単に)と途端に重くなるわけだが、それを知らない無知だけが重くないと主張する。
299 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:31:12 ] 仕掛けや仕組みを知らない無知が重いと主張してるとも取れるな お互いに相手を非難するばかりで自己を省みないね
300 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:36:14 ] いい感じでまとまったな この調子で重くなるパターンと改善策をどんどん出して欲しい
301 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:36:16 ] さっぱり言いたいことが分からん。 あのサンプルコードに意味あるのか? しかも1万件って。 普通に業務で使おうとしたら、1万のオブジェクト生成するだけで重いと思うが。 それに、ググったら日本語ですらTreeViewを使う解法出てくるじゃん。
302 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:42:38 ] >>301 だからなぁ。 とりあえず俺の示したサンプル動かしてから言ってくれる? 動かしもせずに、WPFは重くないとか1万行は重いとか言ってるのお前だろ。 俺は、サンプル示して、WPFは場合によって重いけど、1万行でもやり方次第で軽く表示できる、と示したの。 それがどうして>>299 やら>>301 の結論になるのやら。俺が意味わかんねーよ。 だいたい、何を嫉むんだよ。 お前の言うその「全世界で高給取りのプログラマ」様でさえ「200行で限界」だと認めたのに。
303 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:48:37 ] もう1万行じゃなくていいから、>>276 のソースを1000行とかにでもして動かしてみろ。 ネットブック程度のマシンならカクカクするから。 3000行ならネットブックじゃなくても重い筈。1日の受注が3000明細あるとこぐらいあるだろ? あのままだと、受注明細表出したら重くてつかえねーわけだ。
304 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:55:19 ] ぶっちゃけページャー使って30件ぐらいしか一度に表示しないと思うの 10万record/dayだとしても
305 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 16:57:31 ] 「重くならないように作る」のと、「重くない」の区別つかない人だったのね、ごめん。
306 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:04:49 ] >>298 最後の行が矛盾してるんだよ > そこから外れる(しかも簡単に)と途端に重くなる これには同意する。 だが、簡単に外れるなら、無知な奴が実際より軽いと誤認識する可能性は低いだろ? だから、根拠もなしに「重い」と言ってる奴と「軽い」と言ってる奴がいれば、 「軽い」と言ってる奴は仕組みをよく理解してて 「重い」と言ってる奴は仕組みをあまり理解していないのではないかと考える。
307 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:15:58 ] 視点が違うんだな 俺はベンチマークが目的じゃないんで、 作法に沿ったプログラムで十分な速度が出る事が重要なんだ 仮想化によってWPFの利点が損なわれるなら、 仮想化OFFの性能も考慮する必要があるが、そうじゃないだろ? 下手なプログラムが遅かろうがどうでもいい
308 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:17:34 ] 自称玄人は黙ってろってこったな
309 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:18:34 ] 30件しか表示しないとか言ってる馬鹿の目の前には 2chの板一覧とスレッド一覧は無いのかな
310 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:22:28 ] 10万件しか表示しないとか言ってる馬鹿の目の前には 2chの板一覧とスレッド一覧は無いのかな
311 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:23:05 ] >>306 >だが、簡単に外れるなら、無知な奴が実際より軽いと誤認識する可能性は低いだろ? >>267 いや、なんか疲れた。視点が違うのは間違いないな。 でも、日本のプログラマの8割はその下手なプログラムなんだぜ。
312 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:23:22 ] 700スレくらいかな 100万よりは30の方が近そうだね
313 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:23:52 ] 日本語変になっちまったよ。
314 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:24:11 ] フリーザの戦闘力並
315 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:26:01 ] 極論同士の無意味な熱いバトルです。
316 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:33:12 ] こんな時間にスレの勢い伸ばせるなんてうらやましいです。
317 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:34:28 ] 書いた本人がDBテストの話でWPFの事じゃないと言ってる100万件にいつまでも拘ったり、 30件しか表示しないとか現実離れした事言ったり、 なんかすごいWPF擁護に必死だね。
318 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 17:52:17 ] 仮想化でどうにかなるような100万件の話じゃなくてさ、 WPFでパフォーマンスを追求したけど結局ダメでした って話は無いの? WPFのせいでプロジェクトが頓挫したとか、酷い製品ができあがったとか そういう話が聞きたい。
319 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 18:05:51 ] 採用されても無いから失敗した話も無いね
320 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 18:07:32 ] ハハハ WPFそのもののプロジェクトが頓挫しそうじゃないか
321 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 18:31:41 ] だれうま
322 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 19:19:52 ] WPFが停滞してる原因がsilverlightに人員を取られたってのが何ともな・・・ もっとマシなUIフレームワークは無いものか
323 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 19:47:25 ] 作る側からしたら、WPFとSLはほぼ水平に移行可能だろ? まず、1年目はプロトタイプを少ない拠点で展開し、 ユーザからのフィードバックを受けて好評なら2年目でWeb化。 というプロジェクトの場合、1年目も2年目もお金を沢山もらうけれど、 内部のコードは共通です、みたいなー。
324 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:01:10 ] このスレが伸びてるのはWebに代わってFormの時代がくる予兆か
325 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:12:46 ] ゲームのグラフィックなんか永久にWEBでは実現できないからな
326 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:15:49 ] WPF 対 Silverlight: プロジェクトに最適な技術を選ぶ www.infoq.com/jp/news/2010/06/WPF-vs-Silverlight >>中には、WPF はやがて死ぬ、と考えている人がいるが、 Microsoft Regional Director で MVPの Brian Noyes氏は、少なくとも向こう2,3年はそのようなことは起きない、と信じている。 少なくとも向こう2,3年て…先がねーな
327 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:24:46 ] Brian Noyes
328 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:26:20 ] 途中で送信してしまった。気の済むまでなじってくれ Brian NoyesってWinFormsで二冊本出してWPFでもMSDNに寄稿までしてる人が 2, 3年ってよっぽどだなw
329 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:26:22 ] >>325 HTML5&Canvas&JavaScriptでそのうちできるよ。 レンダリングにハードウェア支援を行う予定だし、 JavaScriptはホットスポットを動的コンパイルで ネイティコードを実行する方向にいってるしね。 一世代前くらいの携帯ゲーム機並みにはなると思われ。
330 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 20:31:26 ] また、低学歴低所得が枝葉末節に拘っているな。
331 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:00:54 ] >HTML5&Canvas&JavaScript 造る側からしたら地獄だな…('A`)
332 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:09:19 ] >>331 ちゃんとしたデバッガがないと厳しい。 あと誰から各ブラウザの挙動を吸収してくれるライブラリかいてくれないとね。 実装の中身が見えちゃうのがいやだなあ・・・。 ソースがみえて本当に困る人が出てくれば、暗号化の話とか、 またでてくるかもね(MSがやってメジャーにならなかったけど)。
333 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:12:36 ] 現状C#でWPFよりよくできたGUIライブラリってないよ。 いまさら糞ダサいFormsなんかさわってられるかっての
334 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:20:15 ] まともに触ってないからそんな事が言えるんだよ
335 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:54:16 ] WPFはGUI組み立てるのにいいと思うけど、そのアプリを使う側のこと考えたらそんな良さどうでもいいわけで
336 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 21:58:51 ] 見た目が綺麗なものが作れるというのはあるだろ WinFormsでも頑張れば同じように綺麗な見た目やアニメーションもできなくはないけどやっぱりWPFより重くなるよ 使う側のことを考えるならもちろん直接DirectXで作るのが理想なわけだが
337 名前:デフォルトの名無しさん [2010/06/10(木) 22:13:24 ] javascript変態だなぁ、webプログラマの苦労は絶えない html5のcanvasでGPUの支援があるのって今はIE9くらいでしょ、他のブラウザも追随しそうだけど時間がかかるだろうなー普及率の問題もあるし そのうちゲームはDirectXじゃなくてIE9を同封して配布するのかな
338 名前:デフォルトの名無しさん [2010/06/10(木) 22:17:22 ] スレチ
339 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 22:49:41 ] Formは、コモンコントロールのラッパーによるダサさがあるし、 WPFは、突貫で作ったような、コントロールの設計の甘さがあるし、 どっちもどっち。
340 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 22:52:26 ] 好きな方使えよってことだね とりあえず相談室にでも消えてろ
341 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:03:33 ] WPFのWindowのWidthとHeightが枠の部分を含めているのに違和感がある。 枠の部分の面積はWindowsのテーマに依存する部分で、さまざまに変化してしまうからデザインを考えたときに使いにくい 例えば枠がめちゃくちゃ広いテーマにしたらWindowの中が全て枠になる可能性もある
342 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:05:15 ] >>341 わくわくするな
343 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:05:51 ] なにか問題でも? 枠内のはWindowのContentに入れた要素で調べられるし。
344 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:13:15 ] 調べられるから何?
345 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:15:12 ] 米Microsoftのやることに間違いはないんだよ
346 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:17:03 ] たまにMSDNが間違ってるのは擁護できない
347 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:19:12 ] 世間はiPadで湧いてるけど、 MicrosoftのOrigamiってどうなったの?
348 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:22:34 ] WPF早く滅べ
349 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:27:10 ] >>344 枠を含めない領域を指定できるから、枠だけしか見えないウィンドウが作られる心配はない。
350 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:41:54 ] >>348 WPFが滅んだとして次はなにがくるんですか?
351 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:45:39 ] XULとか?
352 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:45:52 ] JavaFXですね
353 名前:デフォルトの名無しさん mailto:sage [2010/06/10(木) 23:59:38 ] WPFはUIのフレームワークとしては柔軟性とかよさげだけどパフォーマンスが微妙だ・・・ いまのOS Xとかはどんだけナイスなフレームワークになってるんだ?
354 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 00:18:18 ] WPFアプリが起動しなくなる度に OS再インストールするのに疲れた
355 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 00:19:21 ] 4年ぐらいWPFで開発してるが聞いたことないな
356 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 01:04:44 ] もしかしてXP? XPの時代にはDirectXがまともに動かない、腐ったグラフィックドライバが結構あったからなぁ・・・
357 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 01:45:34 ] パフォーマンスというか、起動時間がネックだな。 起動時間以外は工夫次第でどうにでもなる。 何が原因で起動がこんなに遅いのやら。
358 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 01:53:02 ] 2回目からは速いというか遅くはないよ
359 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 02:03:16 ] 速いマシン使っていればそんなには遅くないかも
360 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 02:17:46 ] 何回目だろうがWinFormsと同程度の速さにはなって欲しいな。 VSTOでExcelのプラグイン書いた時に、UserControlをWPFにするのとWinFormsにするのとで 起動速度が結構違って笑っちゃった。 それでも最初期のWPFと比べればだいぶよくなったけどさ。
361 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 02:34:56 ] SilverLightをデスクトップで使えるようにしたら 軽くなるんじゃね?
362 名前:デフォルトの名無しさん [2010/06/11(金) 02:42:15 ] >>361 それ4だよ toolkitの日本語版がこないのでやってないが AIRみたいにブラウザアプリをインストールという形で ローカルでも使えるようになるとか SLがこんな感じなのでもしかするとWPFって本当に・・・
363 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 03:28:16 ] WPFは自分が作る分には楽でいいが 他人が作ったのは重くて使いたくないな
364 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 04:05:58 ] それはあるな。 SLのOOBの方がパフォーマンス優れてるなら置き換えてもいいんだけどWPFの方がVS開くだけでいきなり始められるから導入が楽でSLには手が伸びない感じ。 これからどうなるか。
365 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 05:49:53 ] Silverlight が来たぞ pc12.2ch.net/test/read.cgi/tech/1271580489/249
366 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 15:08:06 ] VS2010には最初からSL3が入ってるぞ ExpressもVWDには最初から入ってる
367 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 15:11:33 ] >>362 3でもブラウザ外実行はできるけど使い物になるのは4から 4はCDなどからのローカルへのインストールもできるので Silverlightで作れる範囲のものならほんとにWPFいらなくなった
368 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 15:54:36 ] VSのIDEもSilverlightに置き換えて 軽くならないものか
369 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 16:00:20 ] SLもWPFもコード的にはほぼ共通な実装が出来るだろ? SLがどうとかWPF不要とか、そんなこと言ってるの日本人だけ。 compositewpf.codeplex.com/ ローカルファイルに自由にアクセスしたいならWPFしかないし、 Webアプリにしていきなりブラウザ閉じられちゃったりしたら、 困る業務アプリだってあるだろ。 逆にユーザのアプリ導入の敷居を下げたいならSLの方が良い。 客の要求に合わせるしかないだろ?
370 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 16:34:23 ] >>368 重くなるよw レイアウトが複雑なものをSilverlightで作ると糞重くなる
371 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 17:07:51 ] WindowsFormsHostでWinFormのwebbrowserを使うと、 スクロールバーがクラシックスタイルになってしまうのですが 見た目を変えるにはどうしたらよいのでしょうか?
372 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 17:12:12 ] System.Windows.Forms.ApplicationのEnableVisualStyles
373 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 17:16:27 ] ありがとうございます。 Styleプロパティになんか設定するのかと思って調べて行き詰まってました
374 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 20:03:47 ] WPF版のWebBrowserがあるのに、 なんでWinFormの使うの?
375 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 20:08:32 ] ( ゚ρ゚ )<WindowsFormだいすきあうあうお〜
376 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 20:26:44 ] ここを一体何スレだと
377 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 21:14:29 ] Broserのないバージョンをサポートするためだよ
378 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 21:27:26 ] Hostを使うとスクロールバーに問題なかったっけ?
379 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 21:43:54 ] >>377 馬鹿じゃね?
380 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 21:46:49 ] >>374 HTMLを取得してフォームに値を入力してポストするみたいなのが面倒&やり方が分からないからです。 調べたらwinformのブラウザ使える方法があったのでそれでやろうかと。
381 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 21:51:22 ] スパムアプリか。
382 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 22:05:40 ] いや作りたいのはブラゲのBOT
383 名前:デフォルトの名無しさん mailto:sage [2010/06/11(金) 22:31:08 ] 犯罪者乙
384 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 00:07:49 ] ConverterParameterって依存関係プロパティじゃないからバインドできないので、 MultiBinding使うのが定石?っぽいんだけど、 Converterに依存関係プロパティを実装して、そいつにバインドさせるって問題ある?
385 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 00:11:12 ] そろそろSilverlightにもDrawingContextを用意して欲しいなぁ。 任意の図形を単一のVisualに収める仕組み、まだ無いよね。 Controlも全然足りない。Menuすら無いってどうよ。
386 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 00:14:11 ] >>384 INotifyPropertyChangedじゃいかんのか。
387 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 00:24:24 ] >>385 DrawingContextはDrawing作ってるだけだからなあ Drawingだけサポートした方がいいと思う DrawingContextは勘違いしてSystem.Drawing.Graphics感覚で使う奴が必ず出てくるし
388 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 01:36:03 ] >>387 DrawingContextのほうがコードであれこれできるから自由度高い。 BitmapCacheもあるし、昔ほど毛嫌いする必要もないんじゃない。
389 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 02:13:05 ] >>379 ニート?
390 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 06:48:02 ] >>386 なんでINotifyPropertyChanged?どう使うの?
391 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 07:26:17 ] >>385 Menuは確かに欲しい 折角OOBに力を入れてるんだし、基本的なコントロールは一通り欲しいよな
392 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 07:33:06 ] WPF使ってたらメニュー要らないと思うようにならない? メニューのあるデザインは間違いだとさえ。
393 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 08:14:14 ] メニューってたしかにそんなに重要じゃないかもなあ メユーからコピーだの貼り付けだの選んで使ってる人なんていないだろし
394 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 08:23:47 ] キーボードのみで操作出来ないと気持ち悪いっつーかストレス溜まるっつーか まあ一般ユーザは逆なんだろうけれど
395 名前:デフォルトの名無しさん [2010/06/12(土) 08:28:29 ] タッチパネルなどを意識するのであればwinodwsのようなメニューは 捨てるべきだなあ どっちかといえばUIはゲームに学ぶべきだと思う
396 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 08:38:30 ] しかしメニューを捨てたOffice2007は激しく不評
397 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 08:42:46 ] アイコンを大量にずらずらと並べるよりは、メニューの方がマシだと思う しかしSilverlightだと、Altキーを押しても SLアプリじゃなく、ブラウザのメニューバーにフォーカスが移りそうな気がするがなw
398 名前:デフォルトの名無しさん [2010/06/12(土) 08:42:56 ] >>396 そりゃofficeそのものがタッチ向けのソフトじゃないからだろw 中身で考えろw
399 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 08:45:15 ] つーより、何で急にタッチパネルの話になったんだ あんなもん、業務アプリじゃとても使い物にならんと思うが (ハードウェアからして、専用のが必要だし)
400 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 09:20:30 ] VWD2010EE+SL4Tools と、 VC#2010EE でツールボックスを比較してみた 間違いは有るかも ■共通 [ ポインター ][ Border ][ Button ][ Calendar ][ Canvas ][ CheckBox ] [ ComboBox ][ ContentControl ][ DataGrid ][ DatePicker ][ Ellipse ][ Frame ] [ Grid ][ GridSplitter ][ Image ][ Label ][ ListBox ][ MediaElement ] [ PasswordBox ][ ProgressBar ][ RadioButton ][ Rectangle ][ RichTextBox ][ ScrollBar ] [ ScrollViewer ][ Slider ][ StackPanel ][ TabControl ][ TextBlock ][ TextBox ][ TreeView ][ Viewbox ][ WebBrowser ] ■WPFのみ DockPanel DocumentViewer Expander GroupBox ListView Menu Separator StatusBar ToolBar ToolBarPanel ToolBarTray WindowsFormsHost WrapPanel ■Silverlightのみ AutoCompleteBox DataPager HyperlinkButton MultiScaleImage DomainDataSource
401 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 09:45:42 ] Separator無いのかよ・・・
402 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 09:57:08 ] SLはListBox有るのにSeparator無しか
403 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 10:06:20 ] SL専用のコントロールで羨ましいのは、MultiScaleImageくらい?
404 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 11:37:37 ] メニュー・ツールバー・ステータスバーは アプリのひな型としてとりあえず入れるものだと思ってる。 作ってるアプリに最適なUIが見えてきたら不要にできるかもしれないけど 一番最初はどんなUIが最適かわからんものだ。 とっかかりとして便利なんだよ。
405 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 11:56:44 ] > ■WPFのみ > DockPanel、Expander、GroupBox って、おもいっきりよく使うところじゃねーかw Silverlight使いはどうやっているんだよw
406 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 12:05:06 ] WPF標準のコントロールやパネルってWPFとC#だけで作られてるの? どういうつくりなのか想像もつかん
407 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 12:18:03 ] >>405 Silverlight Toolkitというものがあってだな。
408 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 14:42:48 ] Silverlight、メニューもツールバーもステータスバーも無いのな。 まあTextBlockとかで代用出来なくも無いが…。
409 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 16:29:20 ] >>406 極端な話、マウスやキーボードなどによる入力の検知と 最終的な画面への出力さえあればなんでもできる そこだけはもちろんプラットフォーム呼び出しに頼って あとは全てマネージコード
410 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 16:38:49 ] DockPanelなんかドッキングウィンドウなUIでない限り要らないだろ そこまで大袈裟なUI作るならDockPanelの有無なんか些細な問題だし Silverlightでそこまでやらんでしょ
411 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 19:57:04 ] >>410 むしろGridだと大げさすぎてパフォーマンスに懸念があるところで DockPanelやStackPanelのような軽量レイアウトをつかうんだけどなぁ。
412 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:21:14 ] WrapPanelくらいは有っても良いかもなあ。 Webブラウザは、クライアントアプリに比べてウィンドウサイズを動かされる率も高いだろうし。
413 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:42:35 ] ObservableCollectionにRectangleの位置、形状をもったオブジェクトをもたせて それをxamlで参照してRectangleを描画させたいのですがどうしたらいいですか?
414 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:49:11 ] >>413 カスタムのItemsControl作らないと無理じゃないか。
415 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:51:30 ] そーですかorz 俺には無理ですか><
416 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 20:52:56 ] ObservableCollection<RectangleInfo>みたいなこと?自分なら 1. ItemsControlのItemsSourceにObservableCollectionをbind 2. ItemsControl.ItemsPanelにCanvasを入れIsItemsHostにする。 3. RectangleInfoのDataTemplateを定義してRectangleに変換 でできそうな気がする。そんなことやったことないけど
417 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:40:16 ] >>416 試してみたがダメっぽい。 ItemsControlをそのまま使うとItemのコンテナはContentPresenterになるんだけど コンテナの縦横が0だから表示されないという事態になるっぽい。
418 名前:デフォルトの名無しさん [2010/06/12(土) 21:55:59 ] >>417 あぁそうか、Canvas.Topとかで指定しないとダメか。 んじゃ、Rectangleの代わりにPolygonにして座標直接指定か、 ItemContainerStyleでCanvas.TopなどをBind。 気になって超適当な検証コードかいて行けた。
419 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 21:57:31 ] ItemPanelをCanvasにすればいいんじゃないの
420 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 22:03:43 ] >>418 うるうる ちょーだい
421 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 22:35:06 ] 出し惜しみするようなものでもないが、わざわざ見るほどのものですらないよ uproda11.2ch-library.com/11247102.zip.shtml Pass=wpf
422 名前:デフォルトの名無しさん mailto:sage [2010/06/12(土) 22:47:25 ] ありがとう たすかりました
423 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 13:05:48 ] 読み込んだ値によって、使用するConverterを切り替えるにはどうしたらいいですか? たとえば、 設定値が1の場合:EvenConverter 設定値が2の場合:OddConverter といった感じに切り替えることがやりたいです。 もしくはConverter内で、設定値が1の場合、2の場合と処理を分けてもいいんですが、 その場合、Converterにどのように設定値を渡せばいいんでしょうか?
424 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 13:18:33 ] 読み込んだ値って何さ 設定値ってどこの何さ
425 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 13:42:59 ] >>423 複数の引数渡せるコンバーターがあったような
426 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 13:49:11 ] 何を目的としているのか分からないがDataTriggerは使えないだろうか >>425 固定値ならConverterParameterで渡せる(Bind不可)し、 IMultiValueConverterもある。
427 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 14:46:36 ] >>421 ItemContainerStyleという手があったか… 些細なものでもひとのコードを読むのは勉強になる。
428 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 15:35:20 ] 結構XAMLでは苦労するよなあ。 デザイナとプログラマの担当部分の分離なんてやっぱり無理なんじゃないか? もうデザイナにはStyleだけ作ってもらうようにするしかない。
429 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 16:08:00 ] デザイナにも高いレベルでXAMLを理解してもらうしかない。 Webデザイナだってhtmlとcssを理解しているんだから 同じレベルでxamlを理解してもらう必要があるだろうね。 ファイルを.xamlと.xaml.csに分けたから分離完了なんてわけにはいかないさ。
430 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 19:58:21 ] そもそもデザイナを別に雇うとか考えらんねぇ
431 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 20:29:44 ] 作るGUIの内容によってはそういう所もある。 ただ未だに「動かせるのにたえうるStyle」を作れるデザイナなんて見たことがない。
432 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 21:04:33 ] ウチはアットホームが売りなくらい小規模だからな
433 名前:デフォルトの名無しさん mailto:sage [2010/06/13(日) 22:56:08 ] PCメーカに行くと優秀なデザイナがたくさんいるよ
434 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 06:45:03 ] おれのところはデザインの人たちに xaml を意識させることは無いな。 どうせ理解できないから。 各パーツと、それをどう配置するかの詳細情報のみもらう。
435 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 17:49:59 ] >>434 それが現実的だろうね。 xamlはどのみちプログラマの仕事になる。
436 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 19:32:24 ] >>407 あれのNumericUpDownは最高だ
437 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 19:46:53 ] >>396 リボンなら fluent.codeplex.com/
438 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 21:22:32 ] つまりデザインとプログラムの分離は失敗したということだな
439 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 21:46:16 ] プログラマーがデザインセンスを磨けばいいんじゃね?
440 名前:デフォルトの名無しさん mailto:sage [2010/06/14(月) 21:56:07 ] コードに美しさを求める(よな?)人種だから素養はあるはず、たぶん
441 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 00:13:56 ] バカいうな
442 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 03:45:35 ] デザインとプログラムが分離されてるおかげで UIを担当するプログラマとビジネスロジックを担当するプログラマとで分業できるじゃないか
443 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 08:24:17 ] xamlはデザインをプログラムするものだから、デザイナーにプログラム脳を要求してしまっている 完全に分離できているとはいえない
444 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 10:43:54 ] 芸術系の奇抜なデザインならともかく、産業系の工学的なデザインなら、 プログラマーだろうと、誰にでも出来るだろ? 大勢が見たときに、最も万人ウケするデザインにすれば問題無い。 客観的に見て、最も違和感を感じないようにさせれば良いだけ。 正直、それ以上は、デザイナのセンスより、ユーザからのフィードバックの方が重要。 そんな訳で、他人が見て違和感を感じさせるデザインしか出来ない奴は、 他人の気持ちが分からない人か、本当に頭が狂っている人のどちらかだと思っている。
445 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 12:21:43 ] よしじゃあ、お前のデザイン晒してみろ
446 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 13:28:14 ] 普段何かする時にも、これはいいとかこれはこうした方がよくなるとか 考える人ならいいものができると思うよ。
447 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 14:59:02 ] どうしたら他人に受け入れられるか程度も分からない人は駄目だよね。 つまり、会話が面白くなく、自分語りしか出来ない人は、デザインも駄目だと思う。 面白い話が出来ない人は、自分勝手なデザインしか出来ない。
448 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 21:53:40 ] WPF Toolkit と Composite Application Guidance ってどうやって使い分けてます? 両方ともCodePlexで公開されてるんですけれど。 CALの各モジュールの中でToolkitを使いたい人は使うって感じですか?
449 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 23:11:59 ] 冷静に考えてみると、CALってUnityでDIしてるだけのフレームワークだよね。 となると、MEFがある現在、CALの存在意味ってあんまりない? CALのDrop2が出たけれど、MEFとMVVMが目玉になってるし。
450 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 23:21:19 ] >>444 > 芸術系の奇抜なデザインならともかく、産業系の工学的なデザインなら、 > プログラマーだろうと、誰にでも出来るだろ? いきなり工業デザインて専門分野を否定してきたけどさ、 製造業で働いてるデザイナと仕事したことあるか? まあ言いたいことはわかるんだがちょっと現実離れしてるぞ。
451 名前:デフォルトの名無しさん mailto:sage [2010/06/15(火) 23:52:38 ] あるが デザイナー「無効状態は文字を灰色で」 俺 「じゃ編集済み未保存は?」 デザイナー「それは赤で」 俺 「え?編集済み未保存かつ無効状態は?」 デザイナー「青」 俺 「ぇえ!?」 二度とやりたくない。
452 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 00:18:07 ] >>451 悪かった。想像を超えるレベルみたいだ。
453 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 08:46:42 ] 製造業で働いているデザイナって、情報系以外の話かな。 試作品に数十万、量産用の金型に数百万や数千万かかる製造業と、 簡単にUIが修正出来るIT系は、ちょっとデザイナの重みが違うと思うが。 >>451 みたいな例もあるし、 最終的に重要なのは、ユーザからのフィードバックじゃない?
454 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 14:51:28 ] 誰か、CAL使ってる人はいないの? WPFが遅いとかいう話になると、めちゃくちゃレスが付くのに‥‥。 そういえば、使えないプログラマの特徴に、こんなのあったよね。 ・新しい言語、フレームワーク、開発環境のデメリットの情報だけは早い。 ・問題が起きると、大抵マイクロソフトの所為、ということで落ち着く。
455 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 16:17:11 ] CALってクライアント・アクセス・ライセンスでよいのか?
456 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 17:08:23 ] エネルギーの単位だと思う
457 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 22:24:20 ] >>454 CALのほうがMEFより守備範囲が広い。 MEFにはIModuleもなければRegionもない。 CompositWPFEventもない。 ただし、MEFは.NET標準装備のDIコンテナだから将来も安心。 以上を踏まえた上であんたのアプリに必要なものを使えとしか言えないな。 俺はMEFと統合するまではCALを本気で使う気は無い。
458 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 22:27:55 ] 他の話題をブッタ斬ろうとした上自分の話題が無視され逆ギレし「使えないプログラマ」呼ばわりとはw >>453 たしかにその通り。でも、ユーザーからのフィードバック=手戻り。 デザイナーの知識・経験を反映させることで精度を上げ、そのリスクを軽減させることが重要じゃないか? デザイナー自身が反映させる知識・経験を持っていなかったり、その責務を理解していないことも珍しくないがw
459 名前:デフォルトの名無しさん mailto:sage [2010/06/16(水) 22:32:31 ] アプリケーションユーザーインターフェースに関しては、 「綺麗なビットマップを作れる人」が良いデザイナーというわけではないのだけど 美しさ以外は自分の責務ではないからよろしくやってくれというデザイナも稀に生き残っているね。 UXという言葉はもうちょっと広まってくれていい。
460 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 00:03:37 ] もっともユーザのフィードバックだって正鵠を得てるとは限らんしねえ。 要件決めるときとおんなじで本当は何をしたいのかってのがわかんなくなってることままあるよね
461 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 00:37:30 ] WPFやSLのインターフェイスデザインなんて Expression Blend 使って標準コントロールの ControlTemplate いじくるだけじゃないの? コントロールの配置や画面遷移とかはプログラマの領分でしょ。
462 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 07:19:34 ] そこのところがあいまいだからxamlが複雑になって失敗した
463 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 20:14:05 ] xamlは複雑じゃないだろ wpfのアーキテクチャは複雑だけど そこのところがあいまいだとわけわかんねえだろ
464 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 20:21:53 ] Xamlなんてたかだかオブジェクトツリーをつくるだけの言語じゃん。 なにが複雑なのやら。
465 名前:デフォルトの名無しさん mailto:sage [2010/06/17(木) 20:39:13 ] いちいちBlend使わないと まともに作れないのが気にくわん
466 名前:デフォルトの名無しさん [2010/06/17(木) 22:56:15 ] win7, VS2010, WPF4 です。 windows 7 でDPIを100から125(もしくは150)にすると レイアウトが崩れるのだが、DPIの設定を変えても ウィンドウサイズとかフォントサイズとかを変化させない ようにする方法ってある? 調べてみたところ、MSDNに DeclareDPIAware.manifest の名前で 紹介されている manifest をプロジェクトに追加してDPI設定を認知 するようにし、レイアウトその他は自分でゴリゴリ書かないといけない のかな、と思ったのですが。 参考にしたサイトなど: ttp://msdn.microsoft.com/ja-jp/windows/dd630126.aspx ttp://msdn.microsoft.com/en-us/library/ms633543(VS.85).aspx ※SetProcessDPIAware関数は使っていません
467 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 04:02:12 ] SnapsToDevicePixels
468 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 07:25:32 ] >>467 おぉ、こんなプロパティがあったのですか。 ありがとうございます。
469 名前:デフォルトの名無しさん [2010/06/18(金) 07:42:25 ] >>464 コントロールのツリーを表現するのは別に複雑とは思わないが、crlオブジェクトの 参照やバインディングの表記はわかりにくく且つうざすぎるじゃね?
470 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 11:12:14 ] >>469 それぐらいは仕方ないんじゃね? 他に、神がかり的な表記法があるとも思えない。 まぁ、インテリセンスを改良して、Binding指定の時も候補出すとか、 インテリセンスで候補をコードじゃなくUIのプレビューで表示するとか、 そういう改善ぐらいしか出来ないのでは?
471 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 13:57:12 ] 本来的に静的なXML構造に動的なバインド持ち込むからとっ散らかった見た目(&仕様)になるんだと思うな 表示は何でもかんでもCSS!!ってやってピンポイント修飾がやり辛くなってるHTML5と似たような感じ
472 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 19:43:43 ] attached propertyとmarkup extensionとか触らずに三日経てば忘れるレベル
473 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:51:00 ] >>471 どういう風にかければ満足なん?
474 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:57:32 ] expression blend使えば小洒落たGUI作るのは簡単です? 見た目が重要だ!とか言い出してる顧客がいるんだけど外に丸投げだから簡単じゃないと厳しい
475 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 21:58:39 ] 簡単ではあるがセンスがいる
476 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:06:46 ] 自分が作った社内アプリケーションをコード書けない同僚がblend使って改変した時といったら…… かっこいい!おしゃれ!市販ソフトみたい!と賞賛されていた。そいつだけが。マジで
477 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:15:23 ] XAML手打ちに慣れ過ぎて、Blendが使えない。
478 名前:デフォルトの名無しさん [2010/06/18(金) 22:29:46 ] おまおれ
479 名前:デフォルトの名無しさん mailto:sage [2010/06/18(金) 22:49:56 ] そのセンスを用意するのが一番面倒臭いんだけど
480 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 00:38:33 ] Windows 7に付属してるソフトでWPF製のソフトあるの?
481 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 00:39:57 ] PowerShell ISE
482 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 01:05:58 ] 7じゃないけど2008R2のAD管理センターもWPFなんじゃないかな
483 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 01:58:37 ] じゃあやはりMS自身もあまり使ってないのか
484 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 05:31:59 ] 既存のものは既存のものをベースになってるし、異なってるのはDirect3Dを使うようになった標準ゲームぐらい。 たとえば比較的新しい部類に入る Windows Media Center もマネージド アプリケーションだし、WPF が使うのは InBox アプリケーションはこれからでしょ。 実際 Windows Vista から新規に追加された実行可能ファイルなんて PowerShell ぐらいだし。
485 名前:デフォルトの名無しさん [2010/06/19(土) 09:00:18 ] デザイナーにセンスとかいらねーだろ、どっかのデザインぱくればいいだけだしwww お前らも嫌々言ってないでデザインぱくってくればいいよ
486 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 11:20:21 ] >>485 パクるのもセンス。 それをあわせるのもセンス。 不要と思うなら自分でやればいいよね。
487 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 11:30:24 ] デザイナーの美的センスが嫌なんじゃない。 不条理で非合理的で無茶苦茶な要望を平気でいうデザイナーと、それを精査せずに受け入れる上司が嫌なんだ。 「チェックボックスが○でラジオボタンは◇」とか 「すべての部品がアニメーションでうにょぉぉおーん!」とかありえないことを要求する。
488 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 13:05:55 ] ListViewとかGridViewとかDataGridでカラム数を動的に変化させたいんだけど (カラム数がコンパイル時は未確定)、どうすればいいですか? DataTemplateとかでできればいいんですが、 コードビハインドでカラム生成してaddしていくしかないですかね。
489 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 13:56:08 ] DataGridならAutoGenerateColumn=trueでよくね?
490 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 16:20:50 ] >>489 AutoGenerateColumnとかあったんですね。ありがとうございます。 ItemsSourceにバインドさせるコレクションを列に対応させて動的に作ればいいのかな。 やってみます。
491 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 17:15:58 ] >>487 そういうのを否定するならWPF使う意味を示せないのでは?
492 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 18:11:51 ] >>487 それはデザイナーのセンスがないんだね。 絵がきれいだけがセンスじゃないからね。 それを良しとする上司では、ご愁傷様です。
493 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 19:37:12 ] 一見して用途が解らない、見慣れないUIとか嫌過ぎるな。
494 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 20:10:14 ] WPFだと自由度が高いから、それを作られるリスクも高い。 部品をカスタマイズできるのはいいが、部品のあるべき挙動を理解せずに ものすごい挙動を発明するデザイナーがいるからなぁ。 不自由ってのは愚者でも道を違わぬために必要なものだと理解した。
495 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 20:14:08 ] 一度飲まないと始まらない
496 名前:デフォルトの名無しさん mailto:sage [2010/06/19(土) 21:20:35 ] >>487 まずはAbout Faceでも読ませとけ。
497 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 01:52:14 ] うちのノートだとWPF重いから WPFアプリ増えないでくれ
498 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 03:44:37 ] WPF製ソフトにはうんざり 昔のVB製ソフトを思い起こさせる
499 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 06:16:53 ] そんなに重いか? VGAがカスな仮想環境ですらサクサクなのに
500 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 08:14:43 ] 重いっていうなら環境書け
501 名前:デフォルトの名無しさん [2010/06/20(日) 08:32:48 ] 今発売されてるPCなら大丈夫だろうけど 古いPCもいっぴい稼働されてる世の中だから
502 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 08:54:37 ] 御託はいい 重いというなら環境を書け 愚痴と独り言をこぼされても参考にならん
503 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 09:15:42 ] 環境は地球上です
504 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 10:44:04 ] AtomZ520なマシンで色々動かしてみているが アプリ起動とコントロールの動的生成の時は重たいがあとはまぁ何とかなる。 アプリの内容/作り次第では問題にはならないだろう。 だがそれ以上に表示乱れまくりだから、使えないが。
505 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 11:50:17 ] Atomなんて買う奴いるのか
506 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 12:40:21 ] 買っちゃったよ。 しかもデスクトップPC・・・ ネカフェとかだとたまにあるわ。
507 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 12:53:17 ] まあ、買う奴が全く見込めないなら商品展開してないわな
508 名前:デフォルトの名無しさん [2010/06/20(日) 12:54:45 ] ネットブックで開発してるけど問題ないなあ vs2010はストレージ食うのでSSDだときついくらいか
509 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 13:15:01 ] expression blend4何時出るん?
510 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 21:57:26 ] 正直>>506 みたいな奴がなぜム板にいるのか分からん 頭の中に何入ってんの?豆腐?
511 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 22:59:55 ] おからでしょ。
512 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 23:11:10 ] というか Atom でも Z シリーズでしょ? むしろマみたいな玄人向けの面白マシンが多い 環境だと思うんだが。
513 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 23:23:30 ] 玄人じゃないんだろ
514 名前:デフォルトの名無しさん mailto:sage [2010/06/20(日) 23:54:54 ] 重いと言えば環境を書けと言い、 環境を言えば頭がおかしいと言い。 おイタが過ぎる知将さんなんだね。
515 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 01:19:03 ] 頭がおかしいって誰も言ってないし
516 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 01:23:42 ] 素手で岩を抱えりゃ重いに決まってるのに 重い重いと1人でわめいてりゃ滑稽にも見えるさ。 「これ重くない?ねぇねぇ素手で持つと重いよ!重いって!」 他の人は荷車で軽々運んでるのに。
517 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 01:24:30 ] 【レス抽出】 対象スレ:WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part6 キーワード:頭がおかしい 検索方法:マルチワード(OR) 514 名前:デフォルトの名無しさん[sage] 投稿日:2010/06/20(日) 23:54:54 重いと言えば環境を書けと言い、 環境を言えば頭がおかしいと言い。 おイタが過ぎる知将さんなんだね。 抽出レス数:1 ?
518 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 07:23:57 ] WPFはblend買わなきゃいけないのが好かん 普及させる気がないのだろうか
519 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 10:17:05 ] >>518 んなわけない。 WinFormと同様程度のデザインならVSで十分だろ? もっと気狂いじみたデザインをしたい時に、Blendだろ? Expressionシリーズがこのまま普及してくれれば、 PhotoshopやIllustratorのシェアが減らないかな。 アドビのツールは10万を超えるから、個人で買うのは難しい。
520 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 10:47:50 ] >>518 そのレベルで文句を言っていってる人には普及させるつもりはないでしょうね。
521 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 12:36:11 ] >>519 どこをどうしたらPhotoshopと競合すんだよwwwwww アホか
522 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 13:07:41 ] Expression Designのフィルタが充実すれば、それで十分だろ?
523 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 13:29:36 ] Winユーザーらしからぬ意見だなw
524 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 20:33:00 ] Expression Designの元になったExpressionってちょっとカルト的な人気があったグラフィックツールだったんだよな シンプルで割と好きだこれ
525 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 20:34:19 ] >>524 もとになったのってな〜に?
526 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 20:34:58 ] ExpressionはMSに買収されて死んだ 今あるのはパチモン
527 名前:デフォルトの名無しさん mailto:sage [2010/06/21(月) 20:44:23 ] >>525 expressionというグラフィックツールがあったって話
528 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 06:51:06 ] WPFはやってないっていうと必ずだれかがファビョるな
529 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 07:51:38 ] 実際流行ってないから
530 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 08:41:33 ] Intelがatomなんか出すから悪い
531 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 10:27:08 ] atomで.NETでうちのタイムカードレコーダーとして運用してる こういう運用にはちょうどいいわ
532 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 13:42:53 ] iPadは非力なハードウェアでもサクサクなのに、 WPFは、高性能なPCでなんでこんなに重いの?
533 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 13:46:35 ] MACのUIはそのじつ単純なつくりだからです。
534 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 13:57:56 ] ハード固定なら複雑なレイアウトなんかいらんわな ぜんぶ絶対座標でいける
535 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 14:34:33 ] マルチタスクとシングルタスクの違いも大きい。画面を占有できればバッファやメッセージポンプも最小化できるし。 しかし、実際のところ WPF のアプリが重いと思ったことはないな。 VS2008 から VS2010 に移ったけど、あんまり変わらない。多少軽くなったかもと思えるぐらい。
536 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 14:42:53 ] 初期化ってか画面が出てくるまでは重い感じ VSの場合は元から立ち上げ遅いから気にならんのではないか
537 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 14:47:47 ] VSでデバッグなし実行させたときの起動スピードは2010になって速くなったように見える。
538 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:11:13 ] WPFが重いという奴は、低学歴低所得で、マシンが非力なのです。 生活が貧しいと、心まで貧しくなり、視野が狭くなるのです。
539 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 19:14:20 ] 環境によって重いのは別に否定せんが、 重い重いと喚くだけなのは何の意味もねーよなっつーか何つーか
540 名前:デフォルトの名無しさん [2010/06/22(火) 20:25:51 ] 他のアプリに比べて重いだろ認めろよ
541 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 20:40:57 ] 出始めの頃のJavaに比べりゃ遥かにマシ、てとこかね
542 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 20:46:00 ] Atomはピンキリ TDP1W以下のやつから、デュアルコアでHT対応してGMA 3150が統合されてるやつまである。 GMA 3150:200MHz〜400MHz/ビデオメモリ256MB/DirectX9.0c/Shader Model 2.0(3.0はソフトウェア対応) もうすぐ発売されるLincroftは、さらにパフォーマンスがアップして、もっと低消費電力になるらしい。
543 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 21:07:57 ] >>541 AWT とか Swing なんて実際遅すぎて流行らなかったってのもあるよね。
544 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 21:21:03 ] クソツールごときで重いって思わせたらだめだろう
545 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:07:35 ] なんか、ガページコレクションに起因してるようなトロさはあるな。 ページを連続して替える時はすぐ切り替わるけど。 ちょっとほっといた後に切り替えると、少し時間かかったりする。
546 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:28:37 ] それキャッシュのせいだろ WPFは要素が変更されない限り再描画しないから
547 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:30:07 ] オラオラ、下請けども、つべこべ言わずに、客の言うとおりに作れや。 こっちは、金出してんだぞ。 それが嫌なら、プライムベンダーに転職しろや。 つーか、わざわざ戦場で足軽に就職するってマゾ?
548 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:50:28 ] ※触らないでください。
549 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 22:51:26 ] 誰かが触らなくても気は触れているからな。
550 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:17:48 ] .NET Framework 4でOuterGlowBitmapEffectとかBitmapEffectGroupを使おうとして全然動かなくて非推奨に気付いた。 DropShadowBitmapEffectが動くだけになかなか気がつかなかったよ。
551 名前:デフォルトの名無しさん mailto:sage [2010/06/22(火) 23:25:11 ] 3.5の頃から非推奨扱いになってるよ
552 名前:デフォルトの名無しさん mailto:sage [2010/06/23(水) 01:58:25 ] 非推奨なのにObsoleteになってるわけでもなくドキュメントに非推奨って書いてるものが混じっているという程度で ビルドも通るし非推奨の警告も何も出ないのに動かすと何も動作しないのがひどいなど。 4もサポート対象に入ったままだし。
553 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 10:27:26 ] 色をバインドする方法は文字列だけですか?
554 名前:デフォルトの名無しさん mailto:sage [2010/06/24(木) 11:02:14 ] ValueConverter使えば自由
555 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 00:09:30 ] ナビゲーションにはPageを使うのが向いてるとのことだけど、 例えばゲームでよくある ストーリーモード VSモード プラクティス オプション クレジット というようなメニューがあって、オプションを選択したら、右からにゅにゅっと オプション項目が出てくるようなUIを作りたいとき、Pageを使うのは有効? それとも各画面をリソースとして作っておいて、 Clickイベントをイベントトリガで拾うなりして自分でごりごり書いていくのがいいかな。 後者だと遷移アニメーションはなんとかできそう。でもリソースとしてUIを書いていくのは デザイナ使えないしちょっと大変だな。
556 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 00:41:04 ] メニューとテンプレートで済みそうな気がする ページではないんでないか
557 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 07:24:39 ] 線をL本、RectangleをM個かかせたいとき、(L、Mは可変) どうすればいいですか?
558 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 07:39:12 ] なんだこのプログラマとは思えない質問は
559 名前:デフォルトの名無しさん [2010/06/25(金) 07:41:55 ] こういう質問だとよかったかも 線をL本、RectangleをM個かかせたいとき、(L、Mは可変) WPF流に実装するにはどうすればスマートでしょうか?
560 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 08:35:37 ] (´・ω・`)
561 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 13:43:53 ] 線をL本、RectangleをM個書いてはどうか
562 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 14:33:39 ] マジレスすると情報が少なすぎて 何をしたいのかわからないんだよ
563 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 14:36:48 ] WPF勉強中です。 System.Windows.Controls.Controlから派生した複合コントロールの作成を目指しています。XAMLを使用しない条件です。 VisualCollection m_Children; public コンストラクタ() { m_Children = new VisualCollection(this); m_EditButton = new Button(); m_EditButton.HorizontalAlignment = HorizontalAlignment.Left; m_EditButton.VerticalAlignment = VerticalAlignment.Top; m_Children.Add(m_EditButton); m_ClearButton = new Button(); m_ClearButton.HorizontalAlignment = HorizontalAlignment.Left; m_ClearButton.VerticalAlignment = VerticalAlignment.Top; m_Children.Add(m_ClearButton); } protected override int VisualChildrenCount { get { return m_Children.Count; } } protected override Visual GetVisualChild(int index) { return m_Children[index]; } こんなかんじで追加した要素を表示しようとしているのですが、O番目しか表示されません。 位置とサイズ設定コードは別にありますがそれは問題ないです。 Add順序を変えると勿論変えたO番目だけ表示されます。 実装する上で何が足りないのか問題が解決できずに煮詰まっています。
564 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 14:49:08 ] これは…w
565 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 16:06:00 ] >>563 MeasureOverride と ArrangeOverride の実装どうなってる?試しに下の様にして実行してみたけど表示されたよ。 public MyControl() { _children = new VisualCollection(this) { new Button() { Content = "A", Width = 100, Height = 30 }, new Button() { Content = "B", Width = 100, Height = 30 } }; } protected override int VisualChildrenCount { get { return _children.Count; } } protected override Visual GetVisualChild(int index) { return _children[index]; } protected override Size MeasureOverride(Size constraint) { return constraint; } protected override Size ArrangeOverride(Size arrangeBounds) { var rect = new Rect(arrangeBounds); foreach (var i in _children) { var c = (FrameworkElement)i; c.Arrange(rect); rect.Y += c.Height; } return arrangeBounds; } あと、Template 使わないのなら Control から直接派生する意味ないので UserControl から派生させれば? VisaulTree のルートも Panel にしておけば自分で実装する手間は省けるよ。まあ、使えそうな Panel がないなら自分で書くしかないけど。
566 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 16:32:08 ] >>565 ありがとうございます。2個目以降の表示ができました。 それらの実装も書く必要があったのですね・・・。
567 名前:デフォルトの名無しさん mailto:sage [2010/06/25(金) 16:38:26 ] 洋書でMVVM学ぶのにいい参考書あったら教えてください。