[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 05/29 09:48 / Filesize : 198 KB / Number-of Response : 822
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

WPF(XAML, XBAP, .NET4.5)GUIプログラミング Part17



1 名前:デフォルトの名無しさん mailto:sage [2013/11/11(月) 19:31:37.96 ]
ユーザーインターフェースシステム、Windows Presentation Frameworkについて微に入り語るスレ。

Visual Studio 2013 & 2012 & 2010
www.microsoft.com/visualstudio/jpn/downloads
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 .NET Framework 4.5
msdn.microsoft.com/ja-jp/library/vstudio/5a4x27ek.aspx

前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part16
toro.2ch.net/test/read.cgi/tech/1369912326/

関連スレ
Microsoft Silverlight その9
toro.2ch.net/test/read.cgi/tech/1321150267/

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

321 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 22:35:16.30 ]
Icommand自体はWPFのバインドとは何のかかわりもない

CanExecuteが何を元に判定しているかなんてWPFは知らない

しょうがないから適当なタイミングでWPFがCanExecute呼んで画面に反映してるだけるだけ
何度呼ばれているかカウントして表示してみたらいい
知らん奴は驚く

322 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 22:37:29.51 ]
的外れな内容でコーディングするよりコマンド使わないほうがいい

323 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 22:39:23.85 ]
こいつUIスレッドが複数あるとでも思ってるのか

324 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 22:42:00.80 ]
いつになったらUIスレッドと無関係だと理解するんだ?

CanExecuteで判断する内容はMに依存していたとして
コマンドからはMの更新を知ることができない

だからWPFはInotify使えないで地味にCanExecuteを適当に実行してる

325 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 22:43:59.93 ]
ワーカースレッドが裏でプロパティ書き換えない限り不都合なんてないだろ

326 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:16:42.43 ]
ワーカースレッドでCanExecuteが変更されるなら、
CanExecuteChangedもワーカースレッドで呼び出されなければならない。

だが、UIスレッド以外からCanExecuteChangedを呼んで良い、という仕様は文章化されていない。

よって、この動作は不正。
CanExecuteの変更をUIスレッドにマーシャリングしてやる必要がある。

何が言いたいかっていうと、マルチスレッドkが〜とか言ってる奴が
一番マルチスレッドを理解していないって事だ。

327 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:24:55.85 ]
低レベル過ぎて泣ける
相手にして損した

ugayaでもかずきでも好きな奴に相手してもらえ
鼻で笑われるだけ

328 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:27:20.07 ]
> コマンドからはMの更新を知ることができない
知ることはできない、じゃねーよ。
お前が更新を通知する実装をさぼってるだけだろ。

可能なら通知を実装する、
通知がどうしても不可能なら、
CanExecuteは常にtrueにしておき、
Executeでは何も実行しないこともありうる、って仕様にすべき。

329 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:28:31.35 ]
かずきはともかく、ugayaとかスレッドがわかってるつもりで
全然わかってない奴の代表格じゃねーか。



330 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:47:15.40 ]
>>328
つか、ControlTemplateでしっかりグレーにするのが面倒になって、ついそういう仕様にしたりする

331 名前:デフォルトの名無しさん mailto:sage [2013/12/26(木) 23:53:26.46 ]
見た目の事?

だったら、無効状態だと透明度を0.4位にするってのが簡単なのでよく使ってる。

332 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:00:08.19 ]
最近はどうでもよくなってUIのロックしなくなった

333 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:00:45.35 ]
>>331
おお、そんなてぬ×素晴らしい方法があるとは
使わさせてもらいます

334 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:01:29.02 ]
てぬ×って何!?

335 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:02:12.97 ]
手抜き

336 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:11:32.61 ]
無効にするんじゃなくて、○○という理由で処理を実行できません、ってメッセージを出す方が親切だよね

337 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 00:57:31.84 ]
>>336
手抜きに独された意見かもしれないけど
ユーザーは半透明は使えないって学習してくれる
見て無効かわかるし見えないよりは親切だと思う

338 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 01:00:35.85 ]
てぬx誕生の瞬間を見た。

339 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 04:39:41.44 ]
手で抜いてもらうことか



340 名前:デフォルトの名無しさん mailto:sage [2013/12/27(金) 04:44:15.78 ]
流行らないし流行らせない

341 名前:デフォルトの名無しさん [2013/12/28(土) 07:23:34.04 ]
XAML/WPF悪く無いとは思うんだけどねぇ…
なんかスタイルが気に入らんのだなぁ…
かといってWinFormsのバインディングも糞だし…

結局どっちがいいの?

342 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 09:24:24.36 ]
急にLivetつかったWindowがエラー出るようになったんだけど原因分かりませんか。
メインWindowは正常に表示されるが、他のWindowを表示しようとすると例外が発生します。(デザイン時は問題ない)

メッセージ:
型 'LivetCallMethodAction' のインスタンスを型 'TriggerActionCollection' のコレクションに追加することはできません。型 'T' の項目のみが許可されます。

スタックトレース:
場所 System.Windows.FreezableCollection`1.Cast(Object value)
場所 System.Windows.FreezableCollection`1.System.Collections.IList.Add(Object value)
場所 System.Xaml.Schema.XamlTypeInvoker.AddToCollection(Object instance, Object item)
場所 MS.Internal.Xaml.Runtime.ClrObjectRuntime.Add(Object collection, XamlType collectionType, Object value, XamlType valueXamlType)

343 名前:342 mailto:sage [2013/12/28(土) 12:17:57.80 ]
理由はよく分からないけど原因のコードは分かった
Livetを参照しているdllをAssembly.LoadFrom()で読んでると
Livetを利用している他のWindowを表示すると例外が発生する
何これ

344 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 12:34:20.19 ]
複数のLivetが混ざってるんじゃないの
DLL1とDLL2の両方で別々にLivetのソースを含めたりしてないか?
もしそうならLivetを除去してLivetだけ別のDLLとしてコンパイルしてそれを参照する
っていうかLivetなんか使うな

345 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 13:05:34.61 ]
そもそも尾上のLivetが絶賛される出来ならM$がヘッドハントするだろ
ソーシャルゲーなんて作ってる会社にいるってことはまぁそういうことだろ

346 名前:342 mailto:sage [2013/12/28(土) 13:07:41.04 ]
>>344
あー。
そうみたいです。
loadするdllは別フォルダにあって、そこにもlivet.dllがあったのが問題でした。
つかっちゃだめですか。
お騒がせしました。

347 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 13:08:41.69 ]
linuxを作ったライナスは今どこの会社にいるんだっけ?

348 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 13:11:07.52 ]
敷居の高さからかそもそも話題が少ない中で
広報活動してくれた子らが注目を集めちゃっただけ

349 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:17:11.22 ]
なんか過去ログ見ると1年以上前から尾上に粘着してるのが何人かいるみたいだけど、
こういう奴って自分が他人からどう見えるのか想像できないのかね。

馬鹿じゃなかろうかと思うんだが。



350 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:25:36.99 ]
想像できないからやってるんだろうと想像できない人もレベルとしては大差あらへんよ

351 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:29:41.48 ]
想像できないからやってるんだろうと想像できないのではなく、
皮肉を言っているんだよ。通じなかったかな?

皮肉を理解するには高度な知的水準が必要だというし、仕方ないか。

352 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:34:09.91 ]
Livetみたいなのって分かってる人が下の何も分かってない連中に使わせるもんで、
分からなかったら分かってる人にすぐ聞ける環境でないと意味ないんだよな
外野がソースだけ持ってきて>>344みたいに問題解決しながら使えるんなら
そもそも別に必要ない

353 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 14:34:11.19 ]
お前349と別人だろ
似てない
釣りならもっと上手くやろうや

354 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 16:01:15.78 ]
少なくともGoogleやM$でバリバリ開発してる人はこのスレにこないことは確かだな

355 名前:デフォルトの名無しさん mailto:sage [2013/12/28(土) 20:34:08.83 ]
MSはともかくとして、
GoogleってそもそもWPF使ってる製品あんの?

356 名前:デフォルトの名無しさん [2013/12/30(月) 09:35:41.22 ]
xamlでのレイアウトについて質問です。
今、<StackPanel></StackPanel>の中に、
<Grid></Grid>を4つ配置しています。

各Gridは Hright = Auto、 VerticalAlignment = Stretch
としているのですが、
一番下(4つ目)のGridの高さをStackPanelの下いっぱいまで
の高さにしたいです。
AA崩れるかもしれませんが、以下のようにしたいです。

|StackPanel-------------┐
| ┌Grid1 -------------┐|
| └------------------┘|
| ┌Grid2 -------------┐|
| └------------------┘|
| ┌Grid3 -------------┐|
| └------------------┘|
| ┌Grid4 -------------┐|
| | | |
| | | |
| | | |
| | | |
| | | |
| └------------------┘|
└--------------------┘

また、Grid1〜3はVisibilityをCollapsedにする
ことも考えており、その場合でもGrid4はStackPanelの
高さいっぱいまで伸びて欲しいです。
どう記述すれば良いでしょうか?よろしくお願いします。

357 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 09:37:36.75 ]
DockPanelかGridでやれ

358 名前:デフォルトの名無しさん [2013/12/30(月) 10:39:15.45 ]
>>356
なんでStackPanelでやんのよ

359 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 11:00:08.94 ]
試したけどこんな感じで行けると思う
dock
 stack top
  grid
  grid
 grid bottom



360 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 11:37:15.96 ]
>>359
stack要らないと思うよ

361 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 11:44:00.17 ]
あとBottomもいらん

362 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 11:46:26.29 ]
追加削除変更が楽だから使ってんだと思って残した
数量固定なら言われてるとおりイラン

363 名前:356 mailto:sage [2013/12/30(月) 11:51:30.07 ]
>>357-361
ありがとうございます。
例えばGrid2をCollapseにしたときに
Grid1のすぐ下にGrid3が来るように
(Grid2以降の位置が上にずれる)
する方法を調べたらStackPanelを使う方法が
見つかったので、それで実装しようと
頑張っていました。

今は出先なので、帰宅してから
DockPanelで調べ直してみます。
ありがとうございました。

364 名前:356 mailto:sage [2013/12/30(月) 11:52:27.03 ]
>>362
意図を汲み取っていただきありがとうございます。
提示していただいたやり方でやってみます。

365 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 12:00:33.81 ]
考えてみたら一般的な使い方だと上手くいかない
撤回する

366 名前:デフォルトの名無しさん mailto:sage [2013/12/30(月) 15:24:59.60 ]
そういやRowDefinitionのHeightをVMから弄ったらうまく動かなかったんだが
同じコードをコードビハインドから動かしたら正常動作した
アレは何だったんだろうな?

367 名前:356 mailto:sage [2013/12/30(月) 17:22:43.03 ]
DockPanelとGridのみで出来ました。
ありがとうございます。

368 名前:デフォルトの名無しさん [2014/01/03(金) 21:28:41.04 ]
Resoures.resxで文字列リソース
TEXT_A = "項目"
TEXT_B = ":"

というリソースを定義しているのですが、
TEXT_C を定義するときに
TEXT_AとTEXT_Bを参照することは可能でしょうか?

やりたいこととしては、
xamlで
<Label Content="{Binding Source={StaticResource resources}, Path=TEXT_C" />
と書きたいです。

C#のコードでTEXT_A + TEXT_B を設定することも出来ますが、
xamlで一発で書けたら良いと思っています。
よろしくお願いします。

369 名前:デフォルトの名無しさん mailto:sage [2014/01/03(金) 21:36:27.70 ]
Binding.StringFormatでいいんじゃね



370 名前:デフォルトの名無しさん mailto:sage [2014/01/03(金) 21:38:55.33 ]
単純に2つTextBlockを並べたらいい
Labelが使いたいんならLabel-StackPanel(Horizontal)-TextBlock×2

371 名前:368 mailto:sage [2014/01/03(金) 21:50:05.95 ]
>>369-370
ありがとうございます。
まだまだ偏った考えしかできていなかったようです。
非常に勉強になりました。

(今回は>>370さんの方法で書きました)

372 名前:デフォルトの名無しさん mailto:sage [2014/01/04(土) 02:59:15.59 ]
そんなことで良かったんかいw
リソースに設定するくらいだから複数個所から使いまわすのかと思った

373 名前:デフォルトの名無しさん mailto:sage [2014/01/04(土) 07:53:45.69 ]
TEXT_AとBは複数箇所で使い回しているのですが
その流れでCもリソース化しようとしていました。

374 名前:デフォルトの名無しさん mailto:sage [2014/01/06(月) 05:41:01.64 ]
そもそも文字列をリソースにしてそこにバインドする必要あるの?
VMに文字列型のプロパティ持たせてそこにバインドする方がよほど簡単だと思うけど

375 名前:デフォルトの名無しさん mailto:sage [2014/01/06(月) 21:42:08.37 ]
いい加減Xaml捨ててHTML5にするか別のInterface Builder作って欲しいなー
XMLってのが筋悪いんだよな、何故XHTMLが人気でないでHTML5が人気出たかって簡潔で扱い易いからだよ
SGMLをスーパーセットに派生してもXMLやXHTMLはDTDが厳格すぎんだよね、ぶっちゃけ非常に扱い辛い
Xamlも扱いが非常に面倒くさい、未だにWinFormsの人気が衰えないのは化石PGが○○とか関係ないよ

376 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 00:09:56.64 ]
というよりも投資する価値に懐疑的というか。
MSもSurfaceだったり電話だったりでプラットフォーム広げるのに頑張ってはいるんだが…

377 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 00:16:25.43 ]
ぶっちゃけwinformである程度のことができるからな
新しいものに移行する必要がまったくないんだわ
OS側でサポートしなくならない限り亡くならないよ

378 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 00:30:24.52 ]
wpfでも、winformでできることをやるなら大して面倒でもないしややこしくもない
挫折しそうな人は、グリッドやパネルのレイアウトだけ勉強して、イベントドリブンで組めばいいのにな

379 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 01:06:50.63 ]
MVVMもイベントドリブンです



380 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 19:28:33.63 ]
データドリブンじゃなかったの?

381 名前:デフォルトの名無しさん mailto:sage [2014/01/07(火) 23:17:08.16 ]
ユーザーの入力はコマンドだから実質イベントだし
モデルからMVVMへの通知もイベントで受けるんだから
一般的にイベントドリブン型と呼ばれる所以の部分はMVVMだからって特に変わりはないよ
MSが宣伝文句としてたまに使ってるデータドリブンってのはデータが中心のアプリという程度の意味で
イベントドリブンと対立するものじゃない

382 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 04:29:06.95 ]
そもそもイベントドリブンって対話的プログラムって意味だろ
だったら現代のプログラムでイベントドリブンじゃないモノなんて存在しないだろ

383 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 04:35:19.53 ]
そのHTML5にしてもデザインやレイアウトはCSSに完全に依存
ドメインロジックやアニメーション等の動的な要素はDOMやJavaScriptに完全に依存
実際にマークアップは要素や属性の定義だけの最小限だしね
その点XAMLは可読性の著しく低いマークアップでずらずら定義されるから筋悪いってのは同意
XMLとJSON比較してもJSONが人気なのは簡単で書き易いからだろうし

384 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 04:40:33.44 ]
378かが言いたいのは、VMとか用意せずにVだけで
<Button Click="○○"> みたいな感じで
Vのコードビハインドで直接処理書いちゃうみたいなので
全部済ませちまえってことだろ
それだとWPF使う意味あまりないけどw

385 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 05:01:00.08 ]
意味ないっていうか絶対にフィージビリティは低いよね

386 名前:デフォルトの名無しさん [2014/01/08(水) 10:10:11.11 ]
>>383
そこまでXAMLのアニメーションとか筋悪いかね。
コードビハインド一切不許可だとどうかとかは思うけど適度に織り交ぜていいならロジックも結構宣言的にかけていいと思うんだがなぁ
といっても綺麗にかけるようになるまでの敷居がはるかに高いのは否定しないけど。自分も未だによく分からん(´・ω・`) 

387 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 11:35:38.97 ]
MVVMの有用性をWPFの利点として挙げるとして、
そもそもMVVMを実現する為にPrismやLivet等のフレームワークがほぼ必須な時点でおかしな話。

388 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 11:59:21.47 ]
誰も有用性なんか言ってなくね…?w
便宜上V、VMとかいう単語は出てるけど、ただのデータソースとxaml だと思えばいい。
良いとこは使えばいい的な。

389 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 12:35:49.98 ]
最近WPFの勉強を始めたんだけど、
例えば数万件のPointデータを元に絵を描画する場合でも
データバインディングを使ったほうがいいの?

まだデータバインディングってのがよく分かってなくて、
XAMLで記述するってのがすごい違和感あるんだけど。



390 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 12:50:04.69 ]
office の差し込み印刷みたいなもんだと思えばいいw
マーキングしてある部分に値が自動的に突っ込まれる。基本はそんだけ。
まぁ処理もバインドできるけどな。値の整形とかも。

つーか、一通り勉強した方がいい。依存関係プロパティとは!?レベルから

391 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 13:13:14.01 ]
>>389
残念ならが、数万件のデータを扱えるほどWPFの性能は良くない。

最低でも、バックグラウンドでレンダリングし、レンダリング済みの画像を
Bindingするデータとする必要がある。

リアルタイムで更新したいと思ったら、Bindingを使用しない生のWPFでも不十分で
DirectXと連携する必要がある。

392 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 16:22:21.73 ]
昔なんかの記事でWPFアプリケーションは高DPIに完全に対応してるから拡大鏡で見るとフォントが最適なスケールでレンダリングされるとかあってへーと思った記憶があるんだけど
今Windows8.1で試してみたらレンダリング済みのフォントを拡大したようにしか見えないんだけどどういうこと?

393 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 17:25:06.16 ]
TextOptions, RenderOptions, UseLayoutRounding
あたりをいじった上で最適に見えないなら
Windowsのアンチエイリアスがしょぼいってことだろうな

394 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 19:56:27.58 ]
なんか8から8.1にしたら(恐らく誤動作で)ボケて表示されちゃうアプリが増えた気がする。

395 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 20:46:31.96 ]
8.1だとなぜだかボケる

396 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 20:51:25.87 ]
textboxがよくぼける

397 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 21:15:02.14 ]
・ 拡大鏡で綺麗にレンダリングされない(>>392)
・ Windows8.1でぼける (>>394)
・ TextBoxがぼける(>>396)
は全て別の原因によるものだよ

>>393>>396と少しだけかかわりがあるが、
>>392>>394には全く関係がない

398 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 22:43:58.62 ]
htmlがアプリケーションのプレゼンテーション言語として優れてるとは到底思えない

399 名前:デフォルトの名無しさん mailto:sage [2014/01/08(水) 22:53:29.38 ]
HTMLが劣ってるんじゃない
処理系がクソなんだ



400 名前:デフォルトの名無しさん [2014/01/08(水) 23:30:18.70 ]
>>398
別の用途のものをゴニョゴニョ拡張していまにいたってるしね。

401 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 09:05:51.49 ]
Internetとデスクトップの統合!( ・`ω・´)キリッ

402 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 11:10:08.27 ]
HTMLは良い
CSS差し替えだけでレイアウトが大幅に変わる

XAMLはそうもいかない

403 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 11:31:54.43 ]
WPFはPresentationって名前が示す通りビューのフレームワークだからそこで大きなレイアウト変更を吸収する必要性がない
まあリソース使えばなんとでもなるけど

404 名前:デフォルトの名無しさん [2014/01/09(木) 12:59:36.47 ]
>>403
意味分からん。
>>402
自分も要素の定義とレイアウト、見た目は分離してた方が良かったんじゃと思う。より分離できるし。
まぁロジック的な要素もあるから難しいかなー

405 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 13:16:48.66 ]
HTML+CSSって言うけどレイアウト計算の絡むところは全部JavaScriptにやらせるんでしょ?

406 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 13:21:53.63 ]
WPFの勉強が嫌になってきた。
WinFormとC#で書けばやれることを何でわざわざXAMLで書かないといけないんだ?

407 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 13:28:16.97 ]
WinFormで出来ないことをやるための練習

408 名前:デフォルトの名無しさん [2014/01/09(木) 13:30:57.79 ]
>>406
まぁMSはこれから全部XAMLになるだろうしねぇ

409 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 13:43:38.15 ]
WPFで作ってるけどXAMLは数行しか書いてない



410 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 13:47:04.84 ]
WinFormのListViewがバインディングできてればWPFというかXAML系に手を出さなかったかもしれん

411 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 14:20:14.47 ]
Formに出戻りしてListView仮想モードにしてDrawItemイベント時に
ドット区切りのバインディング取ってくるようにしたわ
昔はCollectionをDataTableに変換してた

412 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 20:45:05.57 ]
>>408
MS自身がWPF使うときってWPFの原型を留めてないくらいにがっつり独自フレームワーク使うからなあ
というよりWPF自体どっちかというとそういう大袈裟な使い方をするように設計されていて、
GUIのしょぼい業務アプリの類はさっさとHTMLに移行してほしいんだろうな

413 名前:デフォルトの名無しさん mailto:sage [2014/01/09(木) 23:51:35.32 ]
低レベルな部分の仕組みは結構イケてるんだよね。
高レベルな部分の作りこみは全然ダメだけど。

高レベルな部分を丁寧な独自実装で置き換えると、
悪い評判だらけのWPFとは思えないような、軽快かつ見栄えの良いアプリも作れる。

手間がかかりすぎるので、使える場面は限られるけど・・・。

414 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 00:00:24.32 ]
VisualStudioはWPF製だけど、WPFの悪い部分がしっかり改善されてるんだよな。

メニューの挙動のおかしな点もないし、
TreeViewのデザインもかっこいいし。
GridViewもWPF標準の物の違ってまとも。

WPF標準のコントロールもこれくらい品質が良ければ良かったんだが。

415 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 00:15:38.93 ]
>>401
そういえば、エクスプローラのUIをブラウザと統合して糞使いにくくなったのはどうにかならんかなぁ。
XPまではまだ旧来のUIで使えていたが、7になってどうにもならなくなった。

416 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 00:19:26.23 ]
いや今のエクスプローラはIEコンポなんか使ってないだろ
ボタンをリンクっぽく描画してたりするだけで普通のWinネイティブなアプリだよ

417 名前:デフォルトの名無しさん [2014/01/10(金) 00:44:15.71 ]
>>415
今そんな使いにくいところあったっけ?
普通のエクスプローラとしてしか使ってへんわ

418 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 00:52:47.28 ]
IE5までの話だねw
しかもWin9x限定w
どこの浦島太郎だよって

419 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 01:19:00.81 ]
>>417
エクスプローラのウィンドウとフォルダの対応関係が切られて、位置やサイズなどを
覚えてくれなくなったのがかなり不便。
Windows3.1あたりのファイルマネージャに先祖返りしたのかも知れんが。



420 名前:デフォルトの名無しさん [2014/01/10(金) 02:33:35.57 ]
>>419
どういう風に覚えてたのか忘れちゃった。すまそ(´・ω・`)
前ほどイミフな自動カラム選択とかフォルダによってビューが変わるってのなくなった?
前より使いやすい気がしてる。

421 名前:デフォルトの名無しさん mailto:sage [2014/01/10(金) 04:04:18.77 ]
右側でフォルダ展開すると、左のツリーのアクティブフォルダが
必ず下側の固定位置にいちいちスクロールするのが気に入らん…
下領域空いててスクロールの必要が無いにも関わらずだ。7からなんだが






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<198KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef