トップページtech
1001コメント283KB

WPF(XAML, XBAP, .NET4.0)GUIプログラミング Part8

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2010/12/05(日) 22:08:33
あたらしいユーザーインターフェースシステム、Windows Presentation Frameworkについて語るスレ。
.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/
0778デフォルトの名無しさん2011/02/25(金) 16:30:36.25
>>777
iPod タッチペン 自作 あたりでググると作り方書いてあるよ。
導電スポンジはAmazonあたりで売ってる。
0779デフォルトの名無しさん2011/02/25(金) 16:46:12.17
>>778
ほほぅ〜 これはよさげだw
勉強になったよ ありがとう
0780デフォルトの名無しさん2011/02/25(金) 16:47:05.10
ButtonとTextBoxがあるユーザコントロール作ってDataGrid上に表示したところ、
タブで、そのセルにフォーカスあてると一旦ユーザコントロールにフォーカスが移って、
次にTextBoxという具合になるんですが、
いきなりTextBoxにフォーカスあてるためにはどうしたらいいですか?

0781デフォルトの名無しさん2011/02/25(金) 19:30:03.07
指紋付くの嫌だから、タッチパネル使う時はペンを持ちたいけれど
ピンチイン・ピンチアウト等、二本指必要な操作が問題だ。

つか、将来的には
直接触らなくても、近付けて指を振るだけで動く様にして欲しいかも。
0782デフォルトの名無しさん2011/02/25(金) 20:51:20.14
B型の俺でも指紋は気になる
0783デフォルトの名無しさん2011/02/25(金) 21:41:02.10
AB型なら着いた指紋でアート、これよ
0784デフォルトの名無しさん2011/02/25(金) 21:46:21.08
お前らが血液型で盛り上がってるとは。失望した
0785デフォルトの名無しさん2011/02/26(土) 00:09:44.27
>>780
ContentControlとかはデフォルトだとフォーカスを受け取るから
タブ押してフォーカス移動しながらSnoopとかでフォーカスを持ってるコントロールをチェックしてみ。
07866272011/02/26(土) 02:11:22.84
WPF超初心者です、xamlとコードビハインドの関係を調べています。
例えばWindowが持っているResourceCollectionにSolidColorBrushが入っているとして、それを子ボタンの背景に手動で適用する場合、

MyButton.Background = (Brush)MyStaticResouceExtension.ProvideValue(IServiceProvider);

ここの「IServiceProvider」にはどこのインスタンスを指定すればよいのでしょうか?
0787デフォルトの名無しさん2011/02/26(土) 03:16:56.33
TryFindResourceやSetResourceReferenceをなぜ使わない?
07887862011/02/26(土) 03:34:20.42
>>787
色を塗ったり、塗る方法が知りたいのではなくて
xamlが裏でどのように変換されているのかを調べています。
0789デフォルトの名無しさん2011/02/26(土) 06:54:31.60
自分でマークアップ拡張書いてみてProvideValueに何が渡ってくるか調べてみればいいよ
0790デフォルトの名無しさん2011/02/26(土) 17:13:13.31
>>781
タッチパネル対応箸の出番だな
0791デフォルトの名無しさん2011/02/26(土) 18:04:38.98
>>781
光学式のは厳密には触れなくても反応する。
どこまで指を上げればいいのか分からなくて慣れるまでダブルクリックできないけど。
0792デフォルトの名無しさん2011/02/26(土) 18:08:24.11
音波式って最近見ないよね
0793デフォルトの名無しさん2011/02/26(土) 23:39:43.78
これで、DELLがこの間出したばかりのST2220T(22"IPS、光学式タッチパネル)を
紹介する流れができたわけですね。
0794デフォルトの名無しさん2011/02/27(日) 00:07:54.77
既に画面の前でダンスして操作する時代に入っている
0795デフォルトの名無しさん2011/02/27(日) 14:34:22.89
最近のスレの流れでSnoopの存在知りました。
おまいらありがとう
0796デフォルトの名無しさん2011/02/27(日) 14:40:11.05
>>793
発売から1週間経ってないのに3万とはタッチパネルも安くなったもんだな。
1台買おうかと思って製品仕様見てきた。
IPSなのはいいけどグレアパネル使ってるのか。ノングレアだったら買ってたのに…
0797デフォルトの名無しさん2011/02/27(日) 15:36:11.56
一台グレアパネルを置いておくと後ろを確認するのに便利だぞ。
IOのもNANAOのもグレアパネルだしな……
0798デフォルトの名無しさん2011/02/27(日) 15:37:51.25
命を狙われる開発者wwww
0799デフォルトの名無しさん2011/02/27(日) 15:37:55.22
タッチパネルはどうしても耐久性が必要になってくるからね
ただ光学式ならモニタ表面に何張ってもいいので、アンチグレアフィルムでも貼ればいい
0800デフォルトの名無しさん2011/02/27(日) 15:39:52.58
何の話をしてるの。
0801デフォルトの名無しさん2011/02/27(日) 15:46:44.34
>>768→指紋で汚れそう→タッチパネルとかタッチペンの話→命を狙われる開発者
0802デフォルトの名無しさん2011/02/27(日) 15:49:41.08
>>797が悪い
後ろを確認するのに便利とかいうから
0803デフォルトの名無しさん2011/02/27(日) 16:41:54.67
          ,. ‐''"´ ̄ ̄ ``'‐.、
       .,.‐''";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;`'‐.、
      ,.‐´;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;`‐、
     ,‐´;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;`‐、
    ,l";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;゙'i,
   ,l";;;;;;;;;;;;;;;;;;;;;;;;;;;く ̄` `''=;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;`゙l、
  ,,,,L;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;`i,  _,,,,、 ゙'''li;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i、
.,i",-..,.゙ヽ;;;;;;;;;;;;;;;;;;;;;;;;l" `  .~ヽ、 ~'=i;;;;;;;;;;;;;;;;;;;;;;;;;;;;;i、
゙,l´;;;;;;l l;;;;;;;;;;;;;;;;;ノ''',,,==二^'''i、 ゙' ,、  ゙゙゙'!i;;;;;;;;;;;;;;;;;;;;|
`イ;;;;;;| |;;;;;;;;;!"   ヽ,,,_  ゙゙i;;;;;;;;゙l,,  i、    `゙゙ヽ、;;;;;;|
. ;;;;i´::,l";;;;;;;i"     ゙ `'t;j.、ミ;;;;;;;;;`''゙;> ,l゙ ,,,,,,-''"ヾ |;;;!
. ,;;|`::,l;;;;;;;l"       `'''─゙''ー--''"ノ /, .ヘ_,,,..-'ヽ,ノ;;l
 '';>,l;;;;;;;;l゙          _,,,,-‐  .,,." '.ノ;;;;;;;;;;ッ-、!l;;i´
l,  /;;;;;;;;i'      _,,r‐‐''"`     |  l, ゙ミ'a .、_ッ//
. "く;;;;;;;;;|    ,,,r‐'"            .i. ,!:l::::`"''"//"
:',:::',゙ー-"  ,,r''"           ,、   ,i ,!::|::::::::::://
、゙l,::'               :--、,,,,  i::::|:::::::://
'゙;;,'、::               `ヽ;;;;;;;;>":::|::::://
゙、;;ヽ、::ヽ       jll、,,,,,,,,,,,,,,.:'',、:::::::::::::::,,ソ"
 ゙、;;\:::\           `゙゙);;':::::::.,,∠-'
  ヽ;;;\:::゙.、     ー-=-'''-、 ``:::::/`      用件を聞こうか
    \;;`ヽ;:ヽ、      , "、:::/
     \;;;"-、゙'- ,_    ノ  レ'"
‐、.      \;;;;`ー、;:~''ー、,,,__,,.ノ
  `‐、.     ヽ;;;;;;;;;゙-、l" `
    ゙‐、    \;;;;;;;;;;゙゙'-、
0804デフォルトの名無しさん2011/02/27(日) 17:35:45.30
DataGridで特定のCellをプログラムから編集状態にするにはどうしたらいいでしょうか。
0805デフォルトの名無しさん2011/02/27(日) 17:58:09.70
アホに聞かなくとも自分で調べれば一発だよ
0806デフォルトの名無しさん2011/02/27(日) 18:23:31.66
スレに喧嘩売って今更教えろと言われてもなぁ
0807デフォルトの名無しさん2011/02/27(日) 19:47:31.79
何の話をしてるの。
0808デフォルトの名無しさん2011/02/27(日) 22:58:45.18
>>804
CurrentColumnとCurrentItemを設定してBeginEdit()かな。
0809デフォルトの名無しさん2011/02/28(月) 02:34:47.70
XAMLでアニメーション書くのコードに比べたら楽ちんだけど、
アプリの設定項目としてアニメーションを無効にできるようにしたいとき、
どういうふうに書くといいのかな。コードならストーリーボードの追加・削除はわかるんだけど。
0810デフォルトの名無しさん2011/02/28(月) 09:03:20.95
>>809
細かいことはリソースディクショナリとして別のXAMLファイルに分離しておいて
スタイルを入れ替える
0811デフォルトの名無しさん2011/02/28(月) 22:25:55.85
「WinFormのMS Pゴシック 12ptでのTextBox」と、

「WPFのTextBox」
<TextBox Name="textBox1" FontSize="16" AcceptsReturn="True" FontStretch="Normal" FontFamily="MS PGothic" />

の表示に文字幅の差異が生じるのですが、どうすればWinFormと同じように表示できますか?
左がWinFormの望ましい表示で、右がWPFの文字幅がズレた表示です

http://www1.axfc.net/uploader/Img/so/108711.bmp

また、表示しているのは以下の文字列です

|  | 半角で「&emsp;」、全角スペース+半角スペース
| _ | 半角スペース2個+_
| .| 全角スペース+ドット
| . | 半角スペース2個+ドット
| ~| 半角スペース+~
| | 全角スペース
| _| 半角スペース+_
| ゙| 半角スペース+゙
| .| 半角スペース+ドット
|~| 
|..| 
| | 半角スペース
|゙| 
|.| 
| | (「&thinsp;」)
0812デフォルトの名無しさん2011/03/01(火) 00:40:23.77
2chブラウザでも作るの?
GDI+に強く依存した表示だから再現するのは大変。
WinFormsで作ったコントロールをホストするのが一番簡単じゃないかな。
0813デフォルトの名無しさん2011/03/01(火) 05:03:46.42
せめてpngに変換しろw
ttp://tsushima.2ch.at/s/news2ch126984.png
0814デフォルトの名無しさん2011/03/01(火) 05:10:01.30
ttp://tsushima.2ch.at/s/news2ch126990.png
この辺の話か
0815デフォルトの名無しさん2011/03/01(火) 19:56:35.39
MVVMで、*.xaml.csをViewModel用途にしてはいけない理由がよくわかりません。
別途ViewModelを作って、*.xaml.csの中身は空にするというのが。
0816デフォルトの名無しさん2011/03/01(火) 20:00:34.16
そこはコードビハインドを書く部分だからViewだよ
0817デフォルトの名無しさん2011/03/01(火) 20:04:04.06
>>815
コードビハインドに書いてしまうとUIがくっついてくるから単体テストしづらい
VMはプレーンなクラスなので、できるだけそちらに書いておけば単体テストしやすい
それだけ
0818デフォルトの名無しさん2011/03/01(火) 20:17:03.24
初心者はまずMVVMとか気にしないでどんどん書いたらいいと思うよ…
0819デフォルトの名無しさん2011/03/01(火) 20:23:09.76
MVVMするなら、ファイルを開くダイアログを表示してVMで処理するだけでも
IDialogServiceインターフェイスとか作ってDIしたりとか
かなり大掛かりな仕組みが必要になるんだよな
面倒だからといって、絶対にVMから直接ダイアログを開いたりしてはいけない
理由はとにかく「単体テストの邪魔になるから」
そこまでする気がないならMVVMなんか何の意味もないんですよ
0820デフォルトの名無しさん2011/03/01(火) 20:31:51.53
MVVMでも切り離せない部分あるし、何の意味もないは言いすぎのような。
少なくとも個人ならコストかかる部分だけやる選択肢もある。
0821デフォルトの名無しさん2011/03/01(火) 20:37:22.83
じゃあ意味って何?
バインディングは実際>>815で普通に使えるわけでMVVMのメリットではないよ
0822デフォルトの名無しさん2011/03/01(火) 20:39:59.16
1行目だけ読んで書いたのかよ。
相手すんのもアホらしい。
0823デフォルトの名無しさん2011/03/01(火) 20:44:03.43
教条主義なんで
0824デフォルトの名無しさん2011/03/01(火) 20:44:41.21
>>821
意味がわからないうちは*.xaml.csにイベント書いたりしてていいんじゃないの?

そのうちバインド使った方がいろいろ楽できることに気がつくから

その辺が見えない人に利点を説いても無駄
08258152011/03/01(火) 20:50:40.46
概念としてのMVVMがわからないとか、コードビハインドがどうというよりは、
空の*.xaml.csに何の意味があるかがよくわからないという話です。
08268212011/03/01(火) 20:50:40.89
>>824
そうじゃなくて、.xaml.csに書いたらバインディングが使えないというわけではないってこと
ビュー自身のプロパティにバインドすることも普通に可能
>>815の「なぜVMを別のクラスにするのか」という質問に対して、
「バインディングが便利だから」は回答になってないよ
08278152011/03/01(火) 20:52:37.25
>>826
そういう話です、よくわからないのは。
0828デフォルトの名無しさん2011/03/01(火) 20:52:57.80
だからコード書けって
0829デフォルトの名無しさん2011/03/01(火) 20:55:01.51
>>827
ウインドウの*.xamlに書くべきだけど書けない(またはスゲー量になる)部分をコードとしてそこに書くんだと思ってな
0830デフォルトの名無しさん2011/03/01(火) 20:57:03.89
つか>>821は何で突然バインディングなんて言い出したん?
5日前から誰もバインディングの話なんかしてないが
0831デフォルトの名無しさん2011/03/01(火) 20:57:59.23
バインドという仕組みを利用しないと自分でごりごりコード書いて
そのコード全部をテストしないといけないが、バインドをうまく利用すれば
書くコード量も減るので、自分で面倒みる部分もかなり減る

つまりバグの作りこみも減る

この辺は理屈で言ったところで納得しないだろうから
コード書けって言ってる

ネットで転がってるサンプル程度ではなくてもうちょっと大きなのを
0832デフォルトの名無しさん2011/03/01(火) 21:02:00.82
ウィンドウの一部分だけにMVVMパターンを利用しても、全く意味がないってことはないだろう、って話。
別にダイアログ呼んだっていいんだよ。それでトータルコストが浮くのなら。

正義は何だ?MVVMパターンを100%適用することか?
ちげーだろ。
0833デフォルトの名無しさん2011/03/01(火) 21:05:36.66
>>832
>正義は何だ?MVVMパターンを100%適用することか?
バインド使うことを覚えると将棋の最短手を考えるようにバインドだけで何とかできないか?
とコード減らすことばっかり考える奇妙な状態になるけどなw

それだけ便利
0834デフォルトの名無しさん2011/03/01(火) 21:06:04.45
正義(笑)JUSTICE(笑)
0835デフォルトの名無しさん2011/03/01(火) 21:07:00.45
なんか熱くなってるぞ
08368152011/03/01(火) 21:10:15.33
自分が聞きたいこととは少し話が違う方向にいっているので、再度聞きたいことを書きます。
バインドを使わないとか、コードビハインドで書きたいとかいっているわけではなくて、
単純になぜ*.xaml.csとは別のViewModel.csを用意するのかという話です。
*.xaml.csにバインドするプロパティやコマンドを定義しては駄目なの?、っという所が出発点です。
0837デフォルトの名無しさん2011/03/01(火) 21:10:24.83
>IDialogServiceインターフェイスとか作ってDIしたりとか
>かなり大掛かりな仕組みが必要になる

なんてのは確かに手間考えるとどっこいな気もする
0838デフォルトの名無しさん2011/03/01(火) 21:11:53.22
>>836
ぶっちゃけIDEの仕様
0839デフォルトの名無しさん2011/03/01(火) 21:14:48.26
そこに書いたらMVVMにならないから

が一番シンプルな答えじゃないの
最初の質問で「MVVMで」って言ってるんだから
0840デフォルトの名無しさん2011/03/01(火) 21:16:49.64
>>836
バインディング使いたいだけなら別にそれでも構わない
クラスを分けるのは、単体テストのしやすさと
どうせならクラスごと分けてしまったほうが役割分担や設計がはっきりするから
0841デフォルトの名無しさん2011/03/01(火) 21:18:48.43
InitializeComponentを何だと思ってんの?
0842デフォルトの名無しさん2011/03/01(火) 21:21:03.16
思い切りgolden hammer patternに嵌ってんな。
0843デフォルトの名無しさん2011/03/01(火) 21:25:15.20
方法は別にして、ファイルダイアログくらいはUIに依存しないで開けるようにしないとそれこそMVVMにならんよ
それくらいは最低限必要
0844デフォルトの名無しさん2011/03/01(火) 21:27:20.52
かまってちゃんが沸いてるのか
0845デフォルトの名無しさん2011/03/01(火) 21:28:57.42
VからもVM(面倒だからといって、絶対にVMから直接ダイアログを開いたりしてはいけない>>821)からも開かないでどっから開くん?
0846デフォルトの名無しさん2011/03/01(火) 21:31:41.49
Mだろ。
08478152011/03/01(火) 21:32:29.19
- 責務的には*.xaml.csはあくまでViewでしょ
- なので、責務を考えればViewModelは別クラスにするのが当然
- InitializeComponentしかない*.xaml.csが出来ちゃうのは開発環境的な都合
- *.xaml.csが空なのは気にすんな
- 逆に、MVVM的な責務を気にしないなら、*.xaml.csにコマンドやプロパティを定義するのはあり(別にそうやりたいわけではないですが)

っという認識で合っていますでしょうか?
これで合っているのなら、自分的には納得ですが。
0848デフォルトの名無しさん2011/03/01(火) 21:33:33.59
・InteractionRequestでViewに通知してViewのビヘイビアで受けてダイアログ開いてViewModelに結果を返す。
・インターフェイスを被せておいて、その実装クラスでダイアログ開く。VMからはインターフェイス経由で扱う。
ファイルダイアログなら後者のほうがいいと思う
特定のビューでしか使わないダイアログなら前者でもおk
0849デフォルトの名無しさん2011/03/01(火) 21:36:42.17
>>847
>InitializeComponentしかない*.xaml.cs
もしかしてXAMLでイベントハンドラを指定すれば
*.xaml.csにイベントハンドラのコード部分がかかれるんだが・・・

*.xaml.csってWinFormでいうところのForm1.csと同等に扱えるぞ
*.xamlはWinFormでいうところのデザイナーが勝手に書き換えするやつ(名前忘れた)と同等
0850デフォルトの名無しさん2011/03/01(火) 21:45:09.94
俺はコードビハインドにプロパティ書いて、DataContextに入れてバインディングしてるよ。
Modelに関係ない、純粋にViewでしか使わないようなプロパティばかりだからViewModelに
書くってのはなんか違うような気もするし。
0851デフォルトの名無しさん2011/03/01(火) 21:46:43.42
WPFっていってもXAMLで配置した部品に名前付けて
コードビハインド側で名前を頼りにWinFormのころのようにコードを
ごりごり書くってやり方も可能なんだが、そういうのもよくわかってないのかな?
0852デフォルトの名無しさん2011/03/01(火) 21:53:19.86
>>850
>Modelに関係ない、純粋にViewでしか使わないようなプロパティ
ViewModelはそういうのを置くための場所
ViewModelはModelのラッパーじゃなくて文字通りViewのModelなんだよ
08538152011/03/01(火) 21:54:38.29
>>851
いや、さすがにそれは分かっています。
*.xaml.csが空と言っているのは、VMを作ってコマンドやプロパティを定義したり、
Blendでビヘイビアとか使えば*.xaml.csってほとんど空になりますよね、っという話です。
0854デフォルトの名無しさん2011/03/01(火) 21:57:58.54
>ほとんど空になりますよね
そうだよ

WinFormのころはForm1.csにごりごり書いてたビュー関連の
コードを書く必要がなくなる仕組みがあるんだからw

だから何?って話だけど

0855デフォルトの名無しさん2011/03/01(火) 22:00:05.32
>>852
なるほど。
あとはコードビハインドなら初めから依存プロパティを宣言できるってのもある。
ViewModelでもDependencyObjectを継承すればいいけど、ネット上で見つかるViewModel
の実装はなぜかINotifyPropertyChangedの方ばかりだね。
0856デフォルトの名無しさん2011/03/01(火) 22:04:27.17
>>855
モデルが特定の実装技術に依存するのは糞
っていうのが最近の流行りだから
POCOってやつ
0857デフォルトの名無しさん2011/03/01(火) 22:15:36.30
INotifyPropertyChangedを継承するにしてもほぼ定型なので
もうちょっと手抜きさせてもらえないのかねw
微妙に定型をまいど書くのがなんかしっくりこないw
0858デフォルトの名無しさん2011/03/01(火) 23:58:53.47
コードスニペットから初めて自動生成に飽き足らずAOPとかIL書き換えとか
0859デフォルトの名無しさん2011/03/02(水) 00:06:49.04
いろいろあって訳わからなくなるな
0860デフォルトの名無しさん2011/03/02(水) 00:19:55.42
訳分からなくなるなら使わなければいい。
使わなくても作れる。
0861デフォルトの名無しさん2011/03/02(水) 01:09:07.60
INotifyPropertyChanged自体が、依存関係プロバティーの代替えだからね
0862デフォルトの名無しさん2011/03/02(水) 01:18:11.85
INotifyPropertyChangedより依存プロパティの方がパフォーマンスも機能も優れてるけど
ViewModelではなんで使わないの?>>856のいうモデルとは違うだろうし。
0863デフォルトの名無しさん2011/03/02(水) 03:22:05.38
EventTriggerで使えるのはアニメーション要素だけ。
Style.Triggersはいろんなトリガ使える。
FrameworkElement.TriggersはEventTriggerだけ。

このへんの関係がよくわからん。EventTriggerでXAML内でさくっとプロパティ値変えたいのに、
それはハンドラでやれってか。
0864デフォルトの名無しさん2011/03/02(水) 04:58:17.45
複数のViewが必要になった時点でViewModelを作ることにしてる
最初からViewModelも作るのは不必要な抽象化だと思うし
既存コードを再利用する必要があるとかでない限り
ViewModelには依存プロパティすればいいと思う
0865デフォルトの名無しさん2011/03/02(水) 07:13:23.79
実際のところダイアログ部分だけコードビハインドに書いても
テストに大きな影響は無いと思うんだが。
0866デフォルトの名無しさん2011/03/02(水) 09:35:53.69
>>863
トリガは過去の遺物
VisualStateManagerを使う
0867デフォルトの名無しさん2011/03/02(水) 17:03:22.24
>>866
じゃあアニメーションはそれでやる。
イベントに対して(他の要素の)プロパティを変えるのはやっぱコードからしかないか。
ようやくXAMLでできる動的なことの限界が見えてきた気がする。
0868デフォルトの名無しさん2011/03/02(水) 19:41:03.74
>>867
一瞬で終わる離散キーフレームのアニメーションにする
0869デフォルトの名無しさん2011/03/02(水) 20:15:51.25
アニメーション適用してるプロパティに直接値入れてもアニメーションがプロパティ値を上書き
してる状態なので、アニメーションを削除しないとその値は有効にならない。
アニメ化したいプロパティはユーザーの希望でアニメーション無効にしてても、
実装自体は終始アニメーションで固めてしまったほうがいいってことかなあ。
0870デフォルトの名無しさん2011/03/03(木) 00:52:02.94
見た目に関する遷移は全部アニメーションでいい
Blend使うとそんな感じになる
論理的な状態の変化はVMかコードビハインドで
0871デフォルトの名無しさん2011/03/04(金) 15:29:43.00
VisualStateManagerの使い方が謎
0872デフォルトの名無しさん2011/03/04(金) 15:30:56.19
>>871
え・・・
そんなに難しくはないだろ
0873デフォルトの名無しさん2011/03/04(金) 15:43:45.76
XAMLで困るのは構文だな
やっぱBlend依存でやるしかないのかな?
どうもBlendいやなんだよな・・・
0874デフォルトの名無しさん2011/03/04(金) 17:16:29.68
嫌なら手書きでやれば
0875デフォルトの名無しさん2011/03/05(土) 22:13:21.54
アニメーションというか画像処理みたいなのしたいなぁ
画像にぼかしかけたり、モザイクとアニメーションを同時にやるとか

そういうのは結構難しいんだよな
0876デフォルトの名無しさん2011/03/05(土) 22:16:00.80
>>875
XAMLだけでやろうとしなければそれほどでもなくね?
一旦コードビハインド側でコード書いてXAMLに直せそうならやってみればいいし
0877デフォルトの名無しさん2011/03/05(土) 22:16:06.68
そういうのはピクセルシェーダを使う
仕組みが分かれば超簡単でクソ速い
0878デフォルトの名無しさん2011/03/05(土) 22:21:06.22
>>875
Effectじゃだめじょん?
■ このスレッドは過去ログ倉庫に格納されています