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/
0732デフォルトの名無しさん
2011/02/20(日) 12:45:12.42条件後出しになってごめんなさい。
「前半太字後半」で1文として扱われてほしいのです。
TextBlockとして並べてしまうとたとえば改行の際の動作がおかしいので。
<希望の動作>
前半太字後
半
<TextBlock並べた場合>
前半太字後
____半
0733デフォルトの名無しさん
2011/02/20(日) 13:07:05.700734デフォルトの名無しさん
2011/02/20(日) 13:27:18.800735デフォルトの名無しさん
2011/02/20(日) 14:21:24.51VisualStudio2005 C# Designer を使用して Form を作成中です。
GUI 上に Panel ってのを追加してみたけど、やっぱ止めようとしてます。
で削除したいのですが、削除、切り取りとも、
苦労して配置したボタンその他みんな道連れになって削除されてしまいます。
パネルだけを削除する方法は?
0736デフォルトの名無しさん
2011/02/20(日) 14:23:10.910737デフォルトの名無しさん
2011/02/20(日) 14:23:47.08ではどこに?
0738デフォルトの名無しさん
2011/02/20(日) 14:24:38.900739デフォルトの名無しさん
2011/02/20(日) 14:26:22.62本屋やネットみて基本身につけたほうがいい。
0740デフォルトの名無しさん
2011/02/20(日) 14:26:57.460741デフォルトの名無しさん
2011/02/22(火) 08:38:29.50VerticalScrollBarVisibilityがtrueなRichTextBoxがありますが、Documentプロパティを入れ替えて行数の多い文書を投入してもスクロールが有効になりません。何か手続き漏れているでしょうか?
0742デフォルトの名無しさん
2011/02/22(火) 09:13:30.460743デフォルトの名無しさん
2011/02/22(火) 09:27:27.98すみません741ですがautoでした。
0744デフォルトの名無しさん
2011/02/22(火) 09:44:49.59あんなの行ってなにが得られるというのだね
わんくま(笑)
0745デフォルトの名無しさん
2011/02/22(火) 15:20:03.670746デフォルトの名無しさん
2011/02/22(火) 17:10:41.21kwsk
0747デフォルトの名無しさん
2011/02/22(火) 18:24:58.930748デフォルトの名無しさん
2011/02/22(火) 19:15:31.68あれどうなってんのw
0749デフォルトの名無しさん
2011/02/22(火) 22:27:52.260750デフォルトの名無しさん
2011/02/23(水) 00:48:41.94よく落ちるんじゃなくて、
たまに運がいいと繋がるって感触なんだが……。
0751デフォルトの名無しさん
2011/02/23(水) 08:26:50.980752デフォルトの名無しさん
2011/02/24(木) 07:21:13.740753デフォルトの名無しさん
2011/02/24(木) 08:01:10.97Ribbon UIのサンプルをいじって実験していたところ期待通りの動作とならず質問しましたが、シンプルな WPFアプリケーションで試したところ問題ありませんでした。
Ribbon時の原因はまだ特定できていませんがリフレクションからみで何かあるのかなと推測してます。
0754デフォルトの名無しさん
2011/02/24(木) 08:35:27.75エッセンシャル
0755デフォルトの名無しさん
2011/02/24(木) 09:35:38.480756デフォルトの名無しさん
2011/02/24(木) 09:38:49.08向こうのスレは役にたたない
0757デフォルトの名無しさん
2011/02/24(木) 09:46:44.76WPFに共通する話題ならこっちでやってもいい。
共通する話題か判断できる人は自己解決するだろうけどさ
0758デフォルトの名無しさん
2011/02/24(木) 09:47:01.82SilverlightはWPFじゃなくて.NET Frameworkのサブセットだよ
SilverlightでEntity Frameworkを使うときの話とかWPFスレでやるの?
0759デフォルトの名無しさん
2011/02/24(木) 16:30:35.63やはりページ毎に全ての印刷要素のインスタンスを作らないと駄目ですかね?
ページ数多いとメモリ消費が凄いことになりそうで。
WinFormsはそこらへん効率的だったのに・・・
0760デフォルトの名無しさん
2011/02/24(木) 16:44:35.340761デフォルトの名無しさん
2011/02/24(木) 19:55:00.31あと TextOptions 使ってテキストボックスの文字表示を調整したり、MVVM Light使え等の小技も結構紹介されてた。
しかしデモ見てたら、MVVMって検証含めるとイベントハンドラよりコードが肥大化する印象があるけどどうよ。
0762デフォルトの名無しさん
2011/02/24(木) 21:05:14.26テストしないんだったらVMなんかいらん。
0763デフォルトの名無しさん
2011/02/24(木) 21:26:00.15テストの手間を考えたら構造が少々複雑になったりコードが増えたりするくらいのコストは無視できる。
MVVMでないとWPFのバインディングを活用できないみたいな誤解があるけど
実際は全然そんなことない。
0764デフォルトの名無しさん
2011/02/24(木) 21:34:26.890765デフォルトの名無しさん
2011/02/24(木) 21:42:26.470766デフォルトの名無しさん
2011/02/24(木) 21:46:59.470767デフォルトの名無しさん
2011/02/24(木) 22:36:25.690768デフォルトの名無しさん
2011/02/25(金) 10:27:22.25http://www.youtube.com/watch?v=6Cf7IL_eZ38
0769デフォルトの名無しさん
2011/02/25(金) 10:59:31.090770デフォルトの名無しさん
2011/02/25(金) 12:34:57.950771デフォルトの名無しさん
2011/02/25(金) 13:53:41.820772デフォルトの名無しさん
2011/02/25(金) 16:07:03.720773デフォルトの名無しさん
2011/02/25(金) 16:12:08.390774デフォルトの名無しさん
2011/02/25(金) 16:12:46.390775デフォルトの名無しさん
2011/02/25(金) 16:13:53.810776デフォルトの名無しさん
2011/02/25(金) 16:24:09.09静電容量式で使えないやつもあるから購入前に要チェック。
A型の俺はiPodにも自作タッチペン。
導電スポンジ切ってボールペンの芯の替わりに詰め込むだけの単純な工作だ。
0777デフォルトの名無しさん
2011/02/25(金) 16:27:57.98kwsk
0778デフォルトの名無しさん
2011/02/25(金) 16:30:36.25iPod タッチペン 自作 あたりでググると作り方書いてあるよ。
導電スポンジはAmazonあたりで売ってる。
0779デフォルトの名無しさん
2011/02/25(金) 16:46:12.17ほほぅ〜 これはよさげだw
勉強になったよ ありがとう
0780デフォルトの名無しさん
2011/02/25(金) 16:47:05.10タブで、そのセルにフォーカスあてると一旦ユーザコントロールにフォーカスが移って、
次にTextBoxという具合になるんですが、
いきなりTextBoxにフォーカスあてるためにはどうしたらいいですか?
0781デフォルトの名無しさん
2011/02/25(金) 19:30:03.07ピンチイン・ピンチアウト等、二本指必要な操作が問題だ。
つか、将来的には
直接触らなくても、近付けて指を振るだけで動く様にして欲しいかも。
0782デフォルトの名無しさん
2011/02/25(金) 20:51:20.140783デフォルトの名無しさん
2011/02/25(金) 21:41:02.100784デフォルトの名無しさん
2011/02/25(金) 21:46:21.080785デフォルトの名無しさん
2011/02/26(土) 00:09:44.27ContentControlとかはデフォルトだとフォーカスを受け取るから
タブ押してフォーカス移動しながらSnoopとかでフォーカスを持ってるコントロールをチェックしてみ。
0786627
2011/02/26(土) 02:11:22.84例えばWindowが持っているResourceCollectionにSolidColorBrushが入っているとして、それを子ボタンの背景に手動で適用する場合、
MyButton.Background = (Brush)MyStaticResouceExtension.ProvideValue(IServiceProvider);
ここの「IServiceProvider」にはどこのインスタンスを指定すればよいのでしょうか?
0787デフォルトの名無しさん
2011/02/26(土) 03:16:56.330789デフォルトの名無しさん
2011/02/26(土) 06:54:31.600790デフォルトの名無しさん
2011/02/26(土) 17:13:13.31タッチパネル対応箸の出番だな
0791デフォルトの名無しさん
2011/02/26(土) 18:04:38.98光学式のは厳密には触れなくても反応する。
どこまで指を上げればいいのか分からなくて慣れるまでダブルクリックできないけど。
0792デフォルトの名無しさん
2011/02/26(土) 18:08:24.110793デフォルトの名無しさん
2011/02/26(土) 23:39:43.78紹介する流れができたわけですね。
0794デフォルトの名無しさん
2011/02/27(日) 00:07:54.770795デフォルトの名無しさん
2011/02/27(日) 14:34:22.89おまいらありがとう
0796デフォルトの名無しさん
2011/02/27(日) 14:40:11.05発売から1週間経ってないのに3万とはタッチパネルも安くなったもんだな。
1台買おうかと思って製品仕様見てきた。
IPSなのはいいけどグレアパネル使ってるのか。ノングレアだったら買ってたのに…
0797デフォルトの名無しさん
2011/02/27(日) 15:36:11.56IOのもNANAOのもグレアパネルだしな……
0798デフォルトの名無しさん
2011/02/27(日) 15:37:51.250799デフォルトの名無しさん
2011/02/27(日) 15:37:55.22ただ光学式ならモニタ表面に何張ってもいいので、アンチグレアフィルムでも貼ればいい
0800デフォルトの名無しさん
2011/02/27(日) 15:39:52.580801デフォルトの名無しさん
2011/02/27(日) 15:46:44.340802デフォルトの名無しさん
2011/02/27(日) 15:49:41.08後ろを確認するのに便利とかいうから
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.300805デフォルトの名無しさん
2011/02/27(日) 17:58:09.700806デフォルトの名無しさん
2011/02/27(日) 18:23:31.660807デフォルトの名無しさん
2011/02/27(日) 19:47:31.790808デフォルトの名無しさん
2011/02/27(日) 22:58:45.18CurrentColumnとCurrentItemを設定してBeginEdit()かな。
0809デフォルトの名無しさん
2011/02/28(月) 02:34:47.70アプリの設定項目としてアニメーションを無効にできるようにしたいとき、
どういうふうに書くといいのかな。コードならストーリーボードの追加・削除はわかるんだけど。
0810デフォルトの名無しさん
2011/02/28(月) 09:03:20.95細かいことはリソースディクショナリとして別のXAMLファイルに分離しておいて
スタイルを入れ替える
0811デフォルトの名無しさん
2011/02/28(月) 22:25:55.85「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.77GDI+に強く依存した表示だから再現するのは大変。
WinFormsで作ったコントロールをホストするのが一番簡単じゃないかな。
0813デフォルトの名無しさん
2011/03/01(火) 05:03:46.42ttp://tsushima.2ch.at/s/news2ch126984.png
0814デフォルトの名無しさん
2011/03/01(火) 05:10:01.30この辺の話か
0815デフォルトの名無しさん
2011/03/01(火) 19:56:35.39別途ViewModelを作って、*.xaml.csの中身は空にするというのが。
0816デフォルトの名無しさん
2011/03/01(火) 20:00:34.160817デフォルトの名無しさん
2011/03/01(火) 20:04:04.06コードビハインドに書いてしまうとUIがくっついてくるから単体テストしづらい
VMはプレーンなクラスなので、できるだけそちらに書いておけば単体テストしやすい
それだけ
0818デフォルトの名無しさん
2011/03/01(火) 20:17:03.240819デフォルトの名無しさん
2011/03/01(火) 20:23:09.76IDialogServiceインターフェイスとか作ってDIしたりとか
かなり大掛かりな仕組みが必要になるんだよな
面倒だからといって、絶対にVMから直接ダイアログを開いたりしてはいけない
理由はとにかく「単体テストの邪魔になるから」
そこまでする気がないならMVVMなんか何の意味もないんですよ
0820デフォルトの名無しさん
2011/03/01(火) 20:31:51.53少なくとも個人ならコストかかる部分だけやる選択肢もある。
0821デフォルトの名無しさん
2011/03/01(火) 20:37:22.83バインディングは実際>>815で普通に使えるわけでMVVMのメリットではないよ
0822デフォルトの名無しさん
2011/03/01(火) 20:39:59.16相手すんのもアホらしい。
0823デフォルトの名無しさん
2011/03/01(火) 20:44:03.430824デフォルトの名無しさん
2011/03/01(火) 20:44:41.21意味がわからないうちは*.xaml.csにイベント書いたりしてていいんじゃないの?
そのうちバインド使った方がいろいろ楽できることに気がつくから
その辺が見えない人に利点を説いても無駄
0825815
2011/03/01(火) 20:50:40.46空の*.xaml.csに何の意味があるかがよくわからないという話です。
0826821
2011/03/01(火) 20:50:40.89そうじゃなくて、.xaml.csに書いたらバインディングが使えないというわけではないってこと
ビュー自身のプロパティにバインドすることも普通に可能
>>815の「なぜVMを別のクラスにするのか」という質問に対して、
「バインディングが便利だから」は回答になってないよ
0828デフォルトの名無しさん
2011/03/01(火) 20:52:57.800829デフォルトの名無しさん
2011/03/01(火) 20:55:01.51ウインドウの*.xamlに書くべきだけど書けない(またはスゲー量になる)部分をコードとしてそこに書くんだと思ってな
0830デフォルトの名無しさん
2011/03/01(火) 20:57:03.895日前から誰もバインディングの話なんかしてないが
0831デフォルトの名無しさん
2011/03/01(火) 20:57:59.23そのコード全部をテストしないといけないが、バインドをうまく利用すれば
書くコード量も減るので、自分で面倒みる部分もかなり減る
つまりバグの作りこみも減る
この辺は理屈で言ったところで納得しないだろうから
コード書けって言ってる
ネットで転がってるサンプル程度ではなくてもうちょっと大きなのを
0832デフォルトの名無しさん
2011/03/01(火) 21:02:00.82別にダイアログ呼んだっていいんだよ。それでトータルコストが浮くのなら。
正義は何だ?MVVMパターンを100%適用することか?
ちげーだろ。
■ このスレッドは過去ログ倉庫に格納されています