WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part8
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/12/05(日) 22:08:33.NET4 もリリースされて盛り上がってまいりますた。
Visual Studio 2010
http://www.microsoft.com/japan/msdn/vstudio/
Microsoft .NET Framework 4 (Web インストーラー)
http://www.microsoft.com/downloads/details.aspx?familyid=9CFB2D51-5FF4-4491-B0E5-B386F32C0992&displaylang=ja
Microsoft .NET Framework 4 (スタンドアロンインストーラー)
http://www.microsoft.com/downloads/details.aspx?familyid=0A391ABD-25C1-4FC0-919F-B21F31AB88B7&displaylang=ja
前スレ
WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part7
http://hibari.2ch.net/test/read.cgi/tech/1282479113/
関連スレ
Microsoft Silverlight その7
http://hibari.2ch.net/test/read.cgi/tech/1288613056/
過去スレ
Part6 http://hibari.2ch.net/test/read.cgi/tech/1274423236/
Part5 http://pc12.2ch.net/test/read.cgi/tech/1261879110/
Part4 http://pc12.2ch.net/test/read.cgi/tech/1245384489/
Part3 http://pc12.2ch.net/test/read.cgi/tech/1231506876/
Part2 http://pc11.2ch.net/test/read.cgi/tech/1211453941/
Part1 http://pc11.2ch.net/test/read.cgi/tech/1162950198/
コードを貼る場合は以下のサイトの利用をお勧め。
run codeのチェックは外しておきましょう。
http://ideone.com/
0265デフォルトの名無しさん
2010/12/12(日) 08:59:300266デフォルトの名無しさん
2010/12/12(日) 10:52:370267デフォルトの名無しさん
2010/12/12(日) 11:40:13スタイル使う
リソースディクショナリにまとめておけば簡単に切り替えられるし
ユーザーが作ったものを動的に読み込むこともできる
0268デフォルトの名無しさん
2010/12/12(日) 23:54:35スタイルのスキン的使い方をまとめてるようなところない?
0269デフォルトの名無しさん
2010/12/13(月) 16:41:39InputGestureTextが"Ctrl+O"とか設定されるけど,
それを抑止するにはどうしたらいいでしょう?
面倒だけどCommandを使わずにイベントハンドラで処理するしかないのかニャ?
0270デフォルトの名無しさん
2010/12/13(月) 19:50:23http://www.youtube.com/watch?v=TgVuwq1HRPk
0271デフォルトの名無しさん
2010/12/13(月) 19:56:44このメカニズムは保守に重点を置いてる物だから
何でもできると思ってるのなら大間違い
0272デフォルトの名無しさん
2010/12/13(月) 20:02:240273デフォルトの名無しさん
2010/12/13(月) 20:07:23バインディングの強化はWinFormsやASP.NETからの正当な進化であって
バインディングのためにわざわざ新しく作ったわけじゃない
0274デフォルトの名無しさん
2010/12/13(月) 20:09:010275デフォルトの名無しさん
2010/12/13(月) 20:21:22一般にMVC的な構造にバインディングは有効だからバインディングが重視されてるだけ。
コマンドバインディングだってあれは本来Ctrl+Cとツールバーのコピーボタンとメニューのコピーボタンで
共通の処理を行うための仕組みだ。
0276デフォルトの名無しさん
2010/12/13(月) 20:36:56何でもできるようになろうとしたんですよ
努力は認めるが
0277デフォルトの名無しさん
2010/12/13(月) 20:48:29たくさんの処理方法がある場合にはコマンドを使えばいいの?
たとえば、たった一つのボタンを押すしか実行する方法が無い場合はWinFormのようにボタンクリックイベントで
ボタンを押しても、ショートカットキーでも、メニュ−でも、その他いろいろな条件でメソッド呼ばれるようにしたい場合コマンドを使うの?
0278デフォルトの名無しさん
2010/12/13(月) 20:49:420279デフォルトの名無しさん
2010/12/13(月) 20:53:35そうだよ
で、コマンドが実行されたときの処理はコードビハインドに書く。
イベントハンドラも自由に使っていい。WPFは本来そういう設計。
0280デフォルトの名無しさん
2010/12/13(月) 20:56:000281デフォルトの名無しさん
2010/12/13(月) 21:02:030282デフォルトの名無しさん
2010/12/13(月) 21:04:330283デフォルトの名無しさん
2010/12/13(月) 21:07:28直感というよりは先入観だろうな
0284デフォルトの名無しさん
2010/12/13(月) 21:09:13超面倒臭いんだけど、どうにかならないの?
0285デフォルトの名無しさん
2010/12/13(月) 21:12:13MVC的な設計が面倒くさいのは当たり前のことで
それを補って余りあるメリットがあるなら使えばいいんで
無理してMVVM適用する必要ないんだよ?
0286デフォルトの名無しさん
2010/12/13(月) 21:14:040287デフォルトの名無しさん
2010/12/13(月) 21:15:21貴方とはお付き合い出来ません・・・
0288デフォルトの名無しさん
2010/12/13(月) 21:16:480289デフォルトの名無しさん
2010/12/13(月) 21:19:060290デフォルトの名無しさん
2010/12/13(月) 21:27:04アホらしすぎる
0291デフォルトの名無しさん
2010/12/13(月) 21:33:080292デフォルトの名無しさん
2010/12/13(月) 21:49:28特に何をするでもないのに変数とプロパティ両方に分けるのはめんどくさい
変数だけでいい
って言ってるようなもの。
まぁpropで簡単に実装できるようになったけどさ。
0293デフォルトの名無しさん
2010/12/13(月) 22:20:420294デフォルトの名無しさん
2010/12/13(月) 22:32:320295デフォルトの名無しさん
2010/12/13(月) 23:55:53ビューを切り替えるという概念もなさそうだし
0296デフォルトの名無しさん
2010/12/14(火) 00:01:40北海道の上にマウスを置くと北海道が光って
青森の上におくと青森が光って・・・
みたいなのってどうやるんだ。やりたいけど今の俺の技術じゃ無理だ。
きっと単純なコードじゃ無理だろう。あきらめた。
0297デフォルトの名無しさん
2010/12/14(火) 00:03:20それを取り込んでLINQで繋げてはいほいそいで20分でできたと思う
0298デフォルトの名無しさん
2010/12/14(火) 00:05:120299デフォルトの名無しさん
2010/12/14(火) 00:08:03領域をそれぞれ違う色で塗り潰した画像を別に用意しておいて
マウスポインタの下にあるピクセルの色を取得する
0300デフォルトの名無しさん
2010/12/14(火) 00:54:48284だけどビューの切り替えってどうすればいいの?
最初は、たとえばページ選択するたびにデータテンプレートとか切り替えて、
ViewModelの表現方法変えたりしようかとも思ったんだけど、
見た目はタブコントロールのまんまなのに、
タブコントロールとは微妙にコンテキストが違って来てるような気がするし
0301デフォルトの名無しさん
2010/12/14(火) 04:36:22EllipseをDoubleAnimationで大きさや位置を変える
ってやって、マウスをそこそこ早いスピードでEllipseの中に入れたらたまに色変わらないね。ちょっとシビアだけど厄介だなあ。
0302デフォルトの名無しさん
2010/12/14(火) 05:24:26タブ全体と一つのviewmodelを紐づけていいんじゃないの?
一ページにはviewmodelの一部が表示されてる
viewmodelは複数のmodelを管理もしくはより大きなmodelのサブセット
みたいな
0303デフォルトの名無しさん
2010/12/14(火) 09:15:15大量にスニペット自作しないとだめだけどw
0304デフォルトの名無しさん
2010/12/14(火) 09:17:10公開して
0305デフォルトの名無しさん
2010/12/14(火) 10:35:39MVVMの定型句を登録してるだけ
On$Name$ = new DelegateCommand($Name$, parameter=>true);
public DelegateCommand On$Name$ { get; private set; }
public void $Name$(object parameter)
{
}
こんなのとか
0306デフォルトの名無しさん
2010/12/14(火) 11:31:42MS 公式な奴(RIA Services とか)の命名規約見てる感じ、
コマンドが $Name$Command で、実際の処理メソッドが On$Name$ の方がいいと思う。
0307デフォルトの名無しさん
2010/12/14(火) 12:19:48コマンドの方はバインドさせるために補助的に公開しているに過ぎないわけだから。
コマンドをイベントハンドラとして捉えるのであれば,メソッドは名前以前にprivateにしたほうがいい。
0308デフォルトの名無しさん
2010/12/14(火) 20:58:50そうでないならRubyで十分だよ
0309デフォルトの名無しさん
2010/12/14(火) 21:04:180310デフォルトの名無しさん
2010/12/14(火) 21:09:18それってWPFでXAML使わないと言っているようなもんだな
0311デフォルトの名無しさん
2010/12/14(火) 21:36:41XAMLって使っても使わなくてもどっちでもいいよね。
0312デフォルトの名無しさん
2010/12/14(火) 21:52:02>>308
RubyいいよねRuby。ただしUNIX上に限る
0313デフォルトの名無しさん
2010/12/14(火) 22:09:53どこにマニュアル転がってるんだ?
0314デフォルトの名無しさん
2010/12/14(火) 22:32:52オブジェクト指向の実装が透けて見えてなんかヌルヌルした感じが合わない
依存関係プロパティをコードから触ってる感じ
0315デフォルトの名無しさん
2010/12/14(火) 22:42:22で Blend 3 の製品紹介してるから、真似してみればアニメーションとビヘイビアについてはわかるはず。
0316デフォルトの名無しさん
2010/12/15(水) 06:23:21WPFやWIndows Formで開発するほうをオススメしてるみたいだな。
0317デフォルトの名無しさん
2010/12/15(水) 07:26:47いくら進化した言語ができても、ただ覚えることが増えるだけって感じ
0318デフォルトの名無しさん
2010/12/15(水) 10:51:45今更感のあるどうでもいいレスに反応しちゃうぐらいには危機感を感じているようだ。スレ違いだけど
0319デフォルトの名無しさん
2010/12/15(水) 11:00:57何も便利になってないし
0320デフォルトの名無しさん
2010/12/15(水) 11:02:48VBユーザー涙目って感じでもないしな
0321デフォルトの名無しさん
2010/12/15(水) 11:05:42ム板に居るのにまだそんな事言ってるのかw
何年前から時間止まってるんだ?COBOLer?
0322デフォルトの名無しさん
2010/12/15(水) 11:05:52えっ
0323デフォルトの名無しさん
2010/12/15(水) 16:22:30winformのOpenFolderDialogみたいなものは用意されていないんでしょうか?
0324デフォルトの名無しさん
2010/12/15(水) 16:32:050325デフォルトの名無しさん
2010/12/15(水) 16:44:40Microsoft.Win32.OpenFileDialogクラス
WPFアプリケーション作ったときはusingにMicrosoft.Win32がないから
どこかにOpenFileDialogと書いて、Ctrl+.でusing呼び出して書き込む
0326デフォルトの名無しさん
2010/12/15(水) 17:07:280327デフォルトの名無しさん
2010/12/15(水) 17:08:490328デフォルトの名無しさん
2010/12/15(水) 17:13:080329デフォルトの名無しさん
2010/12/15(水) 17:29:460330デフォルトの名無しさん
2010/12/15(水) 17:39:44これだけ重いIDEと実行ファイルで2Dってw
0331デフォルトの名無しさん
2010/12/15(水) 17:40:53デバッグ時は起動元が違うから適用されないこともあるけどね。
0332デフォルトの名無しさん
2010/12/15(水) 17:42:28そのうちコンピューターと会話をしながらプログラミングできるソフトを
どこかが先に作っちゃうぞ
0333デフォルトの名無しさん
2010/12/15(水) 17:43:560334デフォルトの名無しさん
2010/12/15(水) 17:44:15それだよそれ、デバッグ時と違う結果がでるのがイラっとするよね
デバッグ時はウィンドウの外枠で隠れて見えない文字が起動すると見えるとかほんとやめてほしいわ
0335デフォルトの名無しさん
2010/12/15(水) 17:44:500336デフォルトの名無しさん
2010/12/15(水) 17:46:05ド派手なだけで深みはない
0337デフォルトの名無しさん
2010/12/15(水) 17:50:000338デフォルトの名無しさん
2010/12/15(水) 17:52:16なんかWin7でもインテルのオンボードだとめっちゃ重くなる。
0339デフォルトの名無しさん
2010/12/15(水) 19:11:340340デフォルトの名無しさん
2010/12/15(水) 20:11:380341デフォルトの名無しさん
2010/12/15(水) 20:13:190342デフォルトの名無しさん
2010/12/15(水) 21:34:59http://hibari.2ch.net/test/read.cgi/mac/1291602001/
詳しい奴、ちょっと↑きてくれ
0343デフォルトの名無しさん
2010/12/15(水) 22:12:31winformsでいいだろ
0344デフォルトの名無しさん
2010/12/16(木) 02:31:26どうすればいい?
0345デフォルトの名無しさん
2010/12/16(木) 02:35:250346デフォルトの名無しさん
2010/12/16(木) 02:36:14DataGridTemplateColumn
0347デフォルトの名無しさん
2010/12/16(木) 09:44:140348デフォルトの名無しさん
2010/12/16(木) 10:03:19すまんかった
で、選択肢を表示させるところまではできたんだが、選択してもそれが残らない(?)
表示されない、空白のまま
やっぱり助けて
DataGridComboBoxColumnつかってます
0349デフォルトの名無しさん
2010/12/16(木) 10:57:53してないと値はセットされないので選んでも空になる。
0350デフォルトの名無しさん
2010/12/16(木) 12:24:03これからもよろしく
0351デフォルトの名無しさん
2010/12/17(金) 18:08:330352デフォルトの名無しさん
2010/12/17(金) 18:10:27ちょっとだけよのC#
0353デフォルトの名無しさん
2010/12/17(金) 18:15:21XAMLでBindingしたらフォーカスが移動しないとコールバックを呼び出してくれません
XAMLでもC#のように即コールバックを呼び出すように設定できますか?
0354デフォルトの名無しさん
2010/12/17(金) 18:23:320355デフォルトの名無しさん
2010/12/17(金) 18:44:510356デフォルトの名無しさん
2010/12/17(金) 22:18:01XAMLで出来ないこともC#で出来るけど逆はあまりない。
でもちょっとしたことならXAMLの方が短く書ける。
0357デフォルトの名無しさん
2010/12/17(金) 22:55:27完全にC#>XAML
ただし書くのがめんどくさくなったりする弊害がある
0358デフォルトの名無しさん
2010/12/17(金) 22:58:34一般にXAMLで書いたほうがロードも速かったりするけどな
WPFはもともとC#で書かれてるからそういうことはないけど
0359デフォルトの名無しさん
2010/12/17(金) 23:07:330360デフォルトの名無しさん
2010/12/17(金) 23:29:42<DockPanel>
<ListView Name="list" .../>
<GroupBox DataContext="{Binding SelectedItem,ElementName=list}"...><!--詳細を表示 --></GroupBox>
</DockPanel>
みたいなこともやろうと思えばできるけど、
あちこちの連携をやりすぎるとだんだん挙動がイミフになってキモくなるw
0361デフォルトの名無しさん
2010/12/17(金) 23:42:450362デフォルトの名無しさん
2010/12/17(金) 23:56:040363デフォルトの名無しさん
2010/12/18(土) 00:17:17INotifyPropertyChanged でプロパティ実装するのと、
DependencyProperty でプロパティ実装するのって何か変わるの?
更新通知を自由に送れるか送れないかの差?
速度とかはどうなんだろう。
誰か教えてください。
0364デフォルトの名無しさん
2010/12/18(土) 00:26:08親要素の値を継承するようにしたり添付プロパティの定義に使ったりする
速度はたぶんINotifyPropertyChangedの方がだいぶ速いだろうけど
バインディングとかやってる時点でプロパティアクセスの速度なんか無意味だからどうでもいい
■ このスレッドは過去ログ倉庫に格納されています