WPF(XAML, XBAP, .Net3.5)GUIプログラミング Part5
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2009/12/27(日) 10:58:30て語るスレ。.NET3.5 SP1 もリリースされて盛り上がってまいりますた。
Visual Studio 2008
ttp://www.microsoft.com/japan/msdn/vstudio/
Microsoft .NET Framework 3.5 Service Pack 1
ttp://www.microsoft.com/downloads/details.aspx?FamilyId=AB99342F-5D1A-413D-8319-81DA479AB0D7&displaylang=ja
WPF Toolkit - June 2009 Release
ttp://wpf.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=29117
Visual Studio 2010
ttp://www.microsoft.com/japan/msdn/vstudio/2010/overview/
関連スレ
Microsoft Silverlight その4
ttp://pc12.2ch.net/test/read.cgi/tech/1244812356/
過去スレ
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/
0657デフォルトの名無しさん
2010/04/26(月) 19:07:390658デフォルトの名無しさん
2010/04/26(月) 20:20:09XAML側でコントロールに名前(Name="hoge")とかやれば
C#側から従来のWinFormのようにいじり放題
0659デフォルトの名無しさん
2010/04/26(月) 20:38:000660デフォルトの名無しさん
2010/04/26(月) 20:41:360661デフォルトの名無しさん
2010/04/26(月) 20:46:270663デフォルトの名無しさん
2010/04/26(月) 21:38:080664デフォルトの名無しさん
2010/04/27(火) 00:08:38コードビハインド使ったら負け
0665デフォルトの名無しさん
2010/04/27(火) 00:53:010666デフォルトの名無しさん
2010/04/27(火) 00:54:50都会派はこれ
0667デフォルトの名無しさん
2010/04/27(火) 00:55:030668デフォルトの名無しさん
2010/04/27(火) 00:57:01作らされてるなら敗者
0669デフォルトの名無しさん
2010/04/27(火) 01:27:42プログラマーはバインド関連をマスター
デザイナーはXAML関連をマスター
そんなところですかね?
0670デフォルトの名無しさん
2010/04/27(火) 02:18:51アニメの動きのタイミングを同期させる方法ってありますか。
0671デフォルトの名無しさん
2010/04/27(火) 04:59:260672デフォルトの名無しさん
2010/04/27(火) 08:28:30わけがわからない
0673デフォルトの名無しさん
2010/04/27(火) 09:00:47正解じゃない。
プログラマーはバインド関連とXAML関連をマスター 。
0674デフォルトの名無しさん
2010/04/27(火) 22:14:00デザイナーはExpression BlendとXAMLの基礎事項をマスター
0675デフォルトの名無しさん
2010/04/28(水) 00:05:190676デフォルトの名無しさん
2010/04/28(水) 00:08:47C#のコントロールにも一応項目あったけどここまで使えたっけ?
0677デフォルトの名無しさん
2010/04/28(水) 00:15:35上司は「デザイナの作った物がそのまま動く!素晴らしい!」と言い出して
結局はプログラマが地獄を見る。そういう代物だろ?
0678デフォルトの名無しさん
2010/04/28(水) 00:17:38まあ前ほどは地獄をみないんじゃないかな
バインディングが強力なのでいい感じだよ
0679デフォルトの名無しさん
2010/04/28(水) 00:17:430680デフォルトの名無しさん
2010/04/28(水) 00:18:510681デフォルトの名無しさん
2010/04/28(水) 00:19:170682デフォルトの名無しさん
2010/04/28(水) 01:14:120683デフォルトの名無しさん
2010/04/28(水) 01:48:520684デフォルトの名無しさん
2010/04/28(水) 02:07:24上のサイトの中央付近から始まる「コレクション・オブジェクトへのバインド」のところを
動かそうとしたのですが下記のようなエラーとなり動きません。
>エラー 1 値 ' {Binding}' をプロパティ 'ItemsSource' に割り当てることができません。
>型 'IEnumerable' のプロパティ 'ItemsSource' は文字列として指定できません。
どのように対処すればよいのでしょうか?
0685デフォルトの名無しさん
2010/04/28(水) 02:14:01.NET 4 と .NET 4.0 の違いを詳しく教えてください。
区別すべきなのでしょうか?
0686デフォルトの名無しさん
2010/04/28(水) 02:15:10.NET 4 と指摘していることについて詳しく教えてください
0687デフォルトの名無しさん
2010/04/28(水) 02:19:37素直にXAMLで書けよ
0688684
2010/04/28(水) 02:28:18ListBoxを使っているほかのサンプルと見比べたところ
<Grid x:Name="MainPanel" Loaded="MainPanel_Loaded">
<ListBox ItemsSource=" {Binding}"
DisplayMemberPath="Bmi"/>
</Grid>
の
<ListBox ItemsSource=" {Binding}"
{Binding}の前の半角スペースが原因で文字列として認識されていたようです。
>>687
質問に対する答えになってないと思いますが・・・
0689デフォルトの名無しさん
2010/04/28(水) 02:37:07MVVMを模倣して手動でモデリングしたクラスプログラミングをすることは効率化になりますか?
0690デフォルトの名無しさん
2010/04/28(水) 02:37:150691デフォルトの名無しさん
2010/04/28(水) 02:43:57「.NET Framework 4」が正式名称。
.NET 4.0と言っても問題なく通じるので実用上の問題はない。わざわざ指摘する程の事でもないだろ>>682
0693デフォルトの名無しさん
2010/04/28(水) 03:21:53目指す目標としてXAMLなどがあるんだし、それと同じ仕組みにすれば
MVVMも可能じゃないかな?
まあ自前であれこれするより本当はWPFにするべきなんだが
ところでなんでそんな古い環境にこだわらないといけないんだろうw
0694デフォルトの名無しさん
2010/04/28(水) 05:26:27・Viewを定義する「なにか」を設計する
(WPFではXAML)
・「なにか」からViewを生成するライブラリを実装する
(WPFではSystem.Presentationとかかな?)
・「なにか」と実行時バインドする方法も実装する
(依存プロパティみたいな仕組み。ここでリフレクションががっつり登場)
マンドクセ・・・
XAMLの仕様はそのまま使って.net 2.0 WinFormsでもViewが構築できるライブラリ作れば
それなりに需要は・・・ないか
0695デフォルトの名無しさん
2010/04/28(水) 05:34:570696デフォルトの名無しさん
2010/04/28(水) 05:37:58あれは使えないの?
0697デフォルトの名無しさん
2010/04/28(水) 06:30:25>693
ぶっちゃけマシン性能にもよるんだろうが未だにWPF遅くね?
頻繁な更新が必要なデイトレアプリみたいなもんとか向いてなさそうなんだが。
>694
そげんな感じのもん作ったお。未だに2000とかにも配慮しなきゃいけなくてな( ^ω^)・・・
0698デフォルトの名無しさん
2010/04/28(水) 06:42:250699デフォルトの名無しさん
2010/04/28(水) 07:39:00thx.
2005なのは、そういう環境でWindowsXpとWindowsCEの開発レッスンを受けてますw
自分が2000使ってるのでその点も嬉しいかなw
0700デフォルトの名無しさん
2010/04/28(水) 10:36:39CAL(Prism)なんかはUnityのDIコンテナ使ってるよ。
.NET4で追加されたMEFもかな、仕組みはDIコンテナっぽいが。
0701デフォルトの名無しさん
2010/04/28(水) 10:46:100702デフォルトの名無しさん
2010/04/28(水) 10:52:10自分のグラボがWPFに対応出来てるかしりたいんです
0703デフォルトの名無しさん
2010/04/28(水) 12:52:20WPF のパフォーマンス プロファイリング ツール
http://msdn.microsoft.com/ja-jp/library/aa969767(VS.90).aspx
0704デフォルトの名無しさん
2010/04/28(水) 13:55:32VのコードビハインドでVとVMを手で結びつければバインディングはいらないよ
コマンドはVMのメソッドを呼び出せばいいだけ
0705デフォルトの名無しさん
2010/04/28(水) 14:11:36それが必要ないんだったらコードビハインドをVMとみなして
XAMLで自身のプロパティにバインドするだけでいい
それが本来WPFで想定されていたバインディングの使い方
0706デフォルトの名無しさん
2010/04/28(水) 14:12:000707デフォルトの名無しさん
2010/04/28(水) 14:22:27C++/CLIで使えないのは単にMSにやる気がないから
WPFはアンマネージドな世界との相互運用がしづらいしものすごく高レベルなので
わざわざC++/CLIから使うというのはちょっと考えられない
0708デフォルトの名無しさん
2010/04/28(水) 14:27:11WindowsSDKツールのV6.0A V6.1の両方ともWpfPerf アプリケーションが入ってません
どのSDKですか?
0709デフォルトの名無しさん
2010/04/28(水) 14:30:10同一サーバー上のファイルにアクセスするにはどうすればいいんですか
0710デフォルトの名無しさん
2010/04/28(水) 15:39:52下手に許すとローカルのファイルをいじり放題。その気になればスパイウェアも仕込み放題ということになってしまうから、それはできないことになってる
0711デフォルトの名無しさん
2010/04/28(水) 16:12:42http://ideone.com/OemER
0712デフォルトの名無しさん
2010/04/28(水) 19:15:20V6.0 か V7.0。
以前は単体でもダウンロードできたけど、今は出来ないみたい。
(http://windowsclient.net/wpf/perf/wpf-perf-tool.aspx の previous version of WpfPerf)。
SDK を入れるなら Win32 Development Tools だけ入れればいい。
0713デフォルトの名無しさん
2010/04/28(水) 20:57:54結果:
B
i
n
d
i
n
g
.
あぁそうか…stringもIEnumerableだったな… ってこんなんアリなのかw
0714デフォルトの名無しさん
2010/04/28(水) 23:35:190715デフォルトの名無しさん
2010/04/29(木) 11:29:33できたありがとう
ハードウェアレンダー 1 になってた
サンプルサイト見てるとカクカクだから絶対CPUレンダーだと思ったのに・・・
0716デフォルトの名無しさん
2010/04/29(木) 17:32:32シンプルだけどWPFやSilverlightのシェーダ書くのには十分
C#側のコードを自動生成してくれる
WPFの見本みたいなかっこいいインターフェイス
0717デフォルトの名無しさん
2010/04/29(木) 19:15:450718デフォルトの名無しさん
2010/04/29(木) 19:20:070719デフォルトの名無しさん
2010/04/29(木) 19:25:12XNA+WPFでいけ
http://sorceryforce.com/xna/tips_xnaonwpf.html
0720デフォルトの名無しさん
2010/04/29(木) 19:28:45ここだなあ
http://www.atmarkit.co.jp/fdotnet/vblab/uiframework_01/uiframework_01_01.html
WinFormで動的にコントロール追加したりオーナードローとかやったことある人なら
それほど違和感なくやれると思うがこれからって人は2010のマウスでデザインできる
ってを利用した方がいいかもね〜
0721デフォルトの名無しさん
2010/04/29(木) 22:40:11DirectXは参照できたからそっちで攻めるしかないんじゃない
0722デフォルトの名無しさん
2010/04/29(木) 22:50:42PS2パッドも使えるわ
適当なこと言うな
0723デフォルトの名無しさん
2010/04/29(木) 22:54:59使えねえよ
0725デフォルトの名無しさん
2010/04/29(木) 22:58:27どう突っ込んでいいか悩んだぜ
0726デフォルトの名無しさん
2010/04/29(木) 22:58:49なにいってんの?
0727デフォルトの名無しさん
2010/04/29(木) 23:01:091年前に買った奴だと普通に使えたわ
0728デフォルトの名無しさん
2010/04/29(木) 23:40:58そういうのもう良いから。
しかし DirectInput に未対応なのはなんでなんだろね。
0729デフォルトの名無しさん
2010/04/29(木) 23:45:29WPF+XNAならXBOXコンしか使えない
0730デフォルトの名無しさん
2010/04/29(木) 23:48:59全部読んでサンクス
読んで思ったのが
stackpanelに複数配置されたコンテンツを
そっくり別のコンテンツに取り替えるようなのって
xamlじゃ無理?
画像を表示してた場所をすべてボタンに変えるとか
そういうのはやっぱりC#でやるのかね
決まった雛形だら自由に作れるような感じだけど
GUIの表示をごっそり変えるのはどうするのかな
次はバインド読んでみるか
0731デフォルトの名無しさん
2010/04/29(木) 23:50:28一番端に表示されます。
これを一番端ではなく、もうちょっと内側(2、3個要素が見えるような位置)にしたいんですが、
どうすればよいでしょうか?
0732デフォルトの名無しさん
2010/04/29(木) 23:50:34ああ、そういうことか
0733デフォルトの名無しさん
2010/04/29(木) 23:53:22そういうかゆいところに手が届かないこと多すぎるよな
それの対処にやたら時間かかって先に進めないのが
すごくイラつくわ
コアの部分に全然時間かけれない
0734デフォルトの名無しさん
2010/04/30(金) 00:05:490735デフォルトの名無しさん
2010/04/30(金) 00:11:44やっと初心者がWPFをやる時代が到来胸が熱くなるな
0736デフォルトの名無しさん
2010/04/30(金) 00:46:350737デフォルトの名無しさん
2010/04/30(金) 00:53:210738デフォルトの名無しさん
2010/04/30(金) 02:00:54>>729
このスレならどうせWindows専用ってことだろうから
joyGetPosをP/InvokeすればXBOXコントローラ以外も使える。
Windows 95から存在するAPIなので安心。
ttp://msdn.microsoft.com/ja-jp/library/cc410473.aspx
0739デフォルトの名無しさん
2010/04/30(金) 10:12:31初心者にはあえてこちらの方がお勧めのような気がする
GUI部分とロジック部分を自然に分離して記述するから
ソースも見やすくなりそう
0740デフォルトの名無しさん
2010/04/30(金) 13:01:04ViewModelでViewを生成し、
ViewがViewModelのコントローラという素敵構造にしたんだが…
0741デフォルトの名無しさん
2010/04/30(金) 13:18:34これずーっと読んでいって
第 3回 “見た目”を決めるリソースとスタイル
で詰まった
むずぅ
0742デフォルトの名無しさん
2010/04/30(金) 13:24:51そう?
WinFormでもImageListなんてあるけどあれの汎用版みたいなもんでしょ
0743デフォルトの名無しさん
2010/04/30(金) 13:26:15スタイルはCSSと似てるし
0744デフォルトの名無しさん
2010/04/30(金) 17:50:210745デフォルトの名無しさん
2010/04/30(金) 21:31:35これからWPF試してみたいのでExpression Blend 4が早くでないかなと思ってる。
VS10が出たし、もうすぐだと思ってたんだがアナウンスがないな…
0746デフォルトの名無しさん
2010/04/30(金) 22:57:260747デフォルトの名無しさん
2010/05/01(土) 02:07:09ControlTemplate生成にしかわからんのです
0748デフォルトの名無しさん
2010/05/01(土) 05:48:200749デフォルトの名無しさん
2010/05/01(土) 08:02:08WPFの胆はDataTemplateやItemTemplate
VSだけだと手書きしないといけない
0750デフォルトの名無しさん
2010/05/01(土) 09:16:53WPF一気にやる気なくなったわ
0751デフォルトの名無しさん
2010/05/01(土) 10:52:300752デフォルトの名無しさん
2010/05/01(土) 10:52:45ググりながら試行錯誤してコマンドとコンテキストメニューを繋ごうとしています
キー操作だと正常に動作し、PlayPause_Executeが呼ばれるのですが、
コンテキストメニューは見出しやキーの表示は合っていますが、グレー表示のままで選択できません
何が悪いのでしょうか?
タイマで定期的にCommandManager.InvalidateRequerySuggested();してみても変わらないようですし
キーを押したときにはCheckCanExecuteCommandが呼ばれますが、それ以外では呼ばれないようです
public class Commands
{
public static RoutedUICommand PlayPause = new RoutedUICommand("再生/一時停止", "PlayPause", typeof(Commands),
new InputGestureCollection { new KeyGesture(Key.Space) });
}
XAMLで(はしょっています)
<Window xmlns:local="clr-namespace:hoge">
<StatusBar.ContextMenu>
<ContextMenu>
<MenuItem Command="{x:Static local:Commands.PlayPause}" IsEnabled="True" />
</ContextMenu>
</StatusBar.ContextMenu>
C#側コンストラクタで
CommandBindings.Add(new CommandBinding(Commands.PlayPause, PlayPause_Execute, CheckCanExecuteCommand));
private void CheckCanExecuteCommand(Object sender, CanExecuteRoutedEventArgs e) {
e.CanExecute = true;
}
0753デフォルトの名無しさん
2010/05/01(土) 11:04:27お前は一日中いろんなスレで煽るしかできない人間みたいだな
0754752
2010/05/01(土) 14:06:29どうやらContextMenuの場合だけのようで、理由はまだよくわかりませんが
とりあえずコンストラクタの最後にFocus();を入れることで回避できることがわかりました。
0755デフォルトの名無しさん
2010/05/01(土) 14:11:55お前は一日中いろんなスレで煽られるしかできない人間みたいだな
0756デフォルトの名無しさん
2010/05/01(土) 14:48:48ツールだから、開発者はUIをちゃんと設計して手書きした方が覚えがいい。
■ このスレッドは過去ログ倉庫に格納されています