1 名前:デフォルトの名無しさん [2009/06/12(金) 22:12:36 ] Microsoft Silverlight www.microsoft.com/japan/silverlight/ MSDN Silverlight デベロッパー センター msdn.microsoft.com/ja-jp/silverlight/ The Official Microsoft Silverlight Site silverlight.net/ MSDN Silverlight ダウンロード (SDK, Silverlight Tools) msdn.microsoft.com/ja-jp/silverlight/bb187452.aspx CodePlex Silverlight Toolkit www.codeplex.com/silverlight/ 前スレ pc12.2ch.net/test/read.cgi/tech/1227324813/ pc11.2ch.net/test/read.cgi/tech/1210491703/ pc11.2ch.net/test/read.cgi/tech/1203891514/
554 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 00:30:02 ] まあ、後出しなら何とでも言えが、それなのに的外れと。w
555 名前:523 mailto:sage [2009/09/17(木) 00:31:34 ] る
556 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 00:48:11 ] >>553 GCに頼るよりかは自作するかcodeplex探索するほうがはるかに適切だろ
557 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 15:07:15 ] 点の数が500ぐらいのpolylineを20本ぐらい表示させてマウスの動きにあわせてPOINTCOLLECTIONを設定し直すだけでもっさもっさなんですが、何かやり方が根本的に違うんでしょうか? ちなみにcanvasにaddしてます。
558 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 21:21:23 ] 多分限界だと思う。今の所Flashに毛が生えた程度の速度しか出ないと俺は思ってる。 Silverlight4に期待したい。
559 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 21:28:35 ] WriteableBitmapに描くようにしてみたら
560 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 21:38:31 ] てか、描画周りはFlash速いよ。 速い書き方を知ってる人が書けばの話だけど。
561 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 21:56:30 ] PolyLineではなく、PolyLineSegmentを使ってみては?
562 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 22:03:57 ] WritableBitmapはピクセル操作はできても書けないんじゃなかったっけ? 自前でGraphicsAPI作ればいいのか。 ・・・orz
563 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 22:06:24 ] Renderメソッドで描けるよ もちろん自前でピクセルで描けるなら一番速いだろうが
564 名前:デフォルトの名無しさん [2009/09/17(木) 22:53:35 ] MediaElementを使って、wmvやmp3を読み込んで再生したいです。 そもそも読み込みがうまくいっていないようなのですが、どこがおかしいのでしょうか? どうかよろしくお願いします。 public class Test : Application { Canvas canvas = new Canvas(); MediaElement sound = new MediaElement(); private String url = "pattern02.wmv"; public Test() { RootVisual = canvas; init(); } public void init() { sound.Loaded += new RoutedEventHandler(mInit); } public void mInit(object sender,RoutedEventArgs e) { sound.Source = new Uri(url); sound.Play(); this.canvas.Children.Add(this.sound); } }
565 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 23:02:01 ] >>554 やっちゃったかw
566 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 23:04:14 ] >>565 Webサイトのプロジェクト作った? 開発用Webサーバ上で動かしてる? 読み込むファイルはそのWebサイトプロジェクトのClientBinフォルダの中に入れた?
567 名前:デフォルトの名無しさん [2009/09/17(木) 23:07:31 ] >>566 レスありがとうございます。 wmvは、C#のコードと同じフォルダに入れました。 Webサイトのプロジェクトは作っていませんorz Web上で動かしても、wmvの読み込みを開始しようとすると、他のコンポーネントが消えて 真っ白になっちゃうんですよね。
568 名前:デフォルトの名無しさん mailto:sage [2009/09/17(木) 23:31:45 ] >>564 sound.Loadedの先でSourceを設定してるのが悪いかと。 読み込むファイルの設定を、読み込みが完了したときに呼ばれるとこでしたら駄目でしょ。
569 名前:デフォルトの名無しさん [2009/09/17(木) 23:48:46 ] >>568 さん レスありがとうございます。ご指摘のとおり、Sourceの設定をsound.Loadedの前に持ってきました。 しかし今度はデバッグ中に、UriFormatException はユーザーコードによってハンドルされませんでした。 「無効なURI: URIの形式を決定できませんでした。」というエラーがでます。 C#と同じディレクトリにwmvファイルを持ってきているのですが、URIの指定がまずいのでしょうか? ファイルの置き場所が悪いのですか? public class Test : Application { Canvas canvas = new Canvas(); MediaElement sound = new MediaElement(); private String url = "pattern02.wmv"; public Test() { RootVisual = canvas; init(); } public void init() { sound.Source = new Uri(url); //sound.Sourceをこっちに移しました sound.Loaded += new RoutedEventHandler(mInit); } public void mInit(object sender,RoutedEventArgs e) { //sound.Sourceは、ここにあった sound.Play(); this.canvas.Children.Add(this.sound); } }
570 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 00:35:03 ] 今度はLoadedイベントハンドラの追加より前でSource入れてるし。 Silverlight以前にプログラミングの基礎をしっかりやった方が良いのでは・・・
571 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 00:37:35 ] >「無効なURI: URIの形式を決定できませんでした。」というエラーがでます。 new Uri(url, UriKind.Relative);
572 名前:571 mailto:sage [2009/09/18(金) 00:39:37 ] つーかこれ、わざわざCanvasとか作ってるとこみるとxaml無でコードのみでやってんの?
573 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 00:54:56 ] >>560 まじ?点の数が500ぐらいのpolylineを20本いけちゃう? そしたら即SilverlightからFlashに乗り換える。
574 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 07:32:52 ] >561 後で試してみます(=゚ω゚)ノ
575 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 09:02:20 ] >>573 環境によるだろ
576 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:37:06 ] それをいったらいけちゃうの定義も曖昧だろw 小さい言葉遊びは置いといて、んじゃあFlashでこれは描画速い! っていうサイトない?Silverlightでコレはムリだろ、みたいな。
577 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 12:39:34 ] 確かFlashだとポリラインてmoveTo、LineToの繰り返しで引くんだよね? さすがにCanvasにaddするよりは速いだろうけど、 WritableBitmap.Renderより速いかはわからない。 Flashでも高速描画したいときはBitmapData.drawってやるようだし、 大して変わらない可能性もあるかと。
578 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 15:20:09 ] つーか、とっととDrawContextとか実装しておくれよ…
579 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 18:16:47 ] あれ?WriteableBitmap.Pixels でピクセルバッファに直接アクセスできるけど、そういう話じゃない? SetPixel、GetPixel なんかも簡単に作れるし、DDA で Line するのも難しくない。 つか、「WriteableBitmap SetPixel Line」 でググるとすぐにサンプルが見つかるけど。
580 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 18:31:54 ] 線が毎フレーム動いてるようならWritableBitmap.Renderでは速くならないと思うし、 動かない線をキャッシュするならBitmapCacheだけで十分じゃないかな?
581 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 18:54:41 ] >>578 WPFのDrawingContextで毎フレーム更新したら糞遅いよ どっかでMSの中の人が「最も効率の悪い方法」とコメントしてた記憶がある
582 名前:デフォルトの名無しさん [2009/09/18(金) 20:41:14 ] Json文字列をDataGridに入れるソースなのですが、もうすこしサッパリならないでしょうか? わざわざjoからjaを取り出さなくてもいい方法とか、わざわざenumを作らなくてもいい方法とか あれば教えてください。 public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); string json = "{'title':'Hello!', 'array':[{'id':1, 'name':'aaa'}, {'id':2, 'name':'bbb'}, {'id':3, 'name':'ccc'}]}"; JsonObject jo = (JsonObject)JsonValue.Parse(json); JsonArray ja = (JsonArray)jo["array"]; IEnumerable<test> enum = from obj in ja select new test { ID = (int)obj["id"], NAME = (string)obj["name"] }; mygrid.ItemsSource = enum; } } public class test { public int ID {get; set;} public string NAME { get; set; } }
583 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 20:41:52 ] 凄い質問スレな雰囲気。
584 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 21:36:14 ] まあいいんじゃねえの 有用なドキュメントもないし 俺もSilverlight用アップローダでも作って支援しようかなあ
585 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 22:18:09 ] >>576 言葉遊びとかそういう問題じゃないだろこれは
586 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 22:25:56 ] json扱うならDLR系の言語使ったほうが楽だろうなー
587 名前:デフォルトの名無しさん mailto:sage [2009/09/18(金) 23:58:20 ] >581 そなのか(´・ω・`) 毎フレームでShapeを削除/追加するよりはましかと思ったんだけど・・・ 軽い描画命令が欲しいお(´;ω;`)ウッ… 株式チャートを作りたいんだお・・・
588 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 01:11:52 ] 自作するより持ってきたほうが楽な気が。
589 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 01:17:34 ] 細かい機能で不満が出るかもしれないけど、まずは置いておいて、 全体をまず作りこんでからでもいいと思いますし。 一例 visifire visifire.com/silverlight_chart_designer.php 下の「Gallery」からサンプルが見れます。
590 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 04:39:47 ] シルバーライト3で Service参照 を設定しプログラムしたときに IISのサイトのバインドが2つ以上あるとエラーで実行できないのですが これの回避方法はありませんか? Service の endpoint は正しく設定してあります。 例 IISバインド www.サイト名.co.jp www2.サイト名.co.jp
591 名前:デフォルトの名無しさん mailto:sage [2009/09/19(土) 07:57:41 ] >504 ありがとう。 IEじゃヤフ、GYAO見れるんだが火狐で見れないのが不思議だった。 インストールされているらしいのに。 TEMPディレクトリか・・・・ 気がつかなかった。 だいたいtmpなんてC:直下に置いておくものだろ。 それも奥の方にいくつもある窓の作法なんかに従うなんて出来ない。 理由が分かって少しすっきりしたw
592 名前:デフォルトの名無しさん [2009/09/24(木) 17:19:55 ] <Grid x:Name="LayoutRoot"> <Grid.RenderTransform> <ScaleTransform ScaleX="2"></ScaleTransform> </Grid.RenderTransform> <Rectangle Fill="Blue" Stroke="Red" StrokeThickness="3" /> </Grid> ScaleTransformでRectangleを横方向に拡大しているXAMLです。 拡大後のRectangleの幅を取得したいのですが、ActualWidth や RenderSize.Width では 元々の幅しか取得出来ません、どうにか取得する方法は無いでしょうか?
593 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 01:30:01 ] 2倍すればいいんとちゃうの?
594 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 02:08:58 ] Layoutの方を使う
595 名前:デフォルトの名無しさん mailto:sage [2009/09/25(金) 20:06:37 ] こっちに張っていいのかな? Microsoft Expression Encoder 3 ttp://www.microsoft.com/downloads/details.aspx?FamilyID=b6c8015b-e5de-46c0-98cd-1be12eef89a8&DisplayLang=ja
596 名前:デフォルトの名無しさん [2009/09/27(日) 04:33:52 ] 初心者ですまん。 WPFってWebアプリも作れるよね? じゃあSilverLightの違いって何? SilverLightには4M制限があり、 その為、WPFの機能縮小版であると言うところまでは調べれたんだけど・・・。
597 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 07:01:42 ] WPFは.NET Frameworkが要るのじゃまいか
598 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 08:59:18 ] WPFの場合は、WPFで作った画面が一応ブラウザーの画面にひっついて動いてますよレベルで実質ほとんどWPFアプリが動いてるのと変わらないんじゃ? たとえばクライアントにWPF入ってないといけないとか、サンドボックスも減ったくれもないとか。 ほとんどデプロイの一手段としての役割しかないんじゃ。 アーキテクチャからの適当な予測なのでおお外れしてたらすまん。
599 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 11:09:32 ] Macで動くとか 動画のストリーミング再生に強いとか
600 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 15:05:08 ] 最もWindows寄りなのが Winアプリ。 最もネット寄りなのが Silverlight。 WPFはその間だと思ってる。 ある意味万能だけど、どちらかに寄った実装をしようとしたときに、 対応が難しい(できない)ので、もっぱら作るのはWinアプリか Silverlightアプリ。
601 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 15:20:42 ] winアプリにwpfコントロールを使うってことでいんじゃ。
602 名前:デフォルトの名無しさん mailto:sage [2009/09/27(日) 15:22:00 ] WPFは思いっきりWindows寄りというかグラボ寄り 設計がWinFormsとは全然違っててゲームみたいなスタイル
603 名前:596 mailto:sage [2009/09/27(日) 18:21:55 ] 皆さん、ありがとうございました! クライアントがWinのみを想定した業務用アプリの場合、 どっちを使用したら良いのか悩んでました。
604 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 00:26:41 ] WPFってsilverlightと違って埋め込めなかったと思う。 ページ丸ごとxbapになるはず
605 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 03:49:40 ] IntelがLinux OSのMoblinにSilverlightを移植中 www.infoq.com/jp/news/2009/09/Intel-Port-Silverlight-to-Moblin
606 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:11:57 ] Intelが!?
607 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:32:36 ] >>605 > Silverlightのアプリケーションが.NETランタイム上で動くのか、 > それともMoblinのネイティブコード上へ移植されるのかもわからないが、 > 後者になる可能性が高い。 原文のほうで、恐らく Silverlight runtimeのことをSilverlight applicationsと書いて しまっているせいだろうけど、そのせいで変な記事になっちゃってるね。
608 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:33:30 ] 要するにMoonlightのようなもんだろう?
609 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 11:45:45 ] >>607 ちょっとSilverlightを誤解してるんだろうなそれ ネイティブコードで書かれたCLRの上にマネージコードのレイヤを載せて その上でマネージコードのアプリケーションを動かす以外にありえない
610 名前:デフォルトの名無しさん mailto:sage [2009/09/28(月) 19:59:12 ] tblみたいなもん?
611 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 16:09:59 ] CanvasにRectangleを500ぐらい追加して、MouseMoveでCanvas.SetLeft等を使って表示位置を動かすとします。 Transformは使わないものとします。 Mouseを動かした時にCPU負荷があがるけれどそれなりのFrameRateで描画出来るんですが、RectangleがCanvasの外に出る時などに固まるような気がします。 これは何故でしょう? またCanvasで子が矩形に含まれるかどうかの判定を省いたりなど処理速度をあげる方法はありますか?
612 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 17:07:48 ] もしかして、CaputureMouseやってなかったり?
613 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 17:29:36 ] いやマウスはCanvasの矩形の中で動かすんだが、中のRectangleが矩形からはみ出そうになった時に引っかかってるっぽい気が。
614 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 17:37:36 ] なので、RectangleにMouseCaptureしないと。
615 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 18:59:53 ] Silverlightで作成された業務アプリ?見つけた。 ここの株価チャートがSilverlightで作られてる オーソドックスなWinアプリみたいな作りだけど wincity.jp/
616 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:19:59 ] >614 ん?よくわからん・・・ Rectangleは描画するのに必要なだけでイベント処理は全部Canvasのほうですよ?
617 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:26:22 ] マウスでRectangleをD&Dして動かすというのではないの?
618 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:39:55 ] Canvas上でMouseMoveをひろって500個のRectangleの位置を動かしてるだけです(´・ω・`) つたない日本語ですまん。
619 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:48:45 ] Rectangle使わないでRenderTargetBitmapに直接書き込んだら? 矩形の描画だけなら簡単だろ
620 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:50:01 ] WriteableBitmapの間違い
621 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 21:58:21 ] >619 矩形だけでない他の描画要素を含むグラフとかチャートコントロール的なカスタムコントロールを作る必要があるんで、自前描画も一瞬考えたんだが出来れば避けたい・・・ 最悪その線も考えてるんですが・・・
622 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:00:55 ] グラフの中身をアニメーションさせたりしないで全体をまとめて動かすだけだったら WriteableBitmap.Renderでキャッシュしとけばいい
623 名前:611 mailto:sage [2009/09/29(火) 22:29:04 ] すまん、全体をまとめて動かすだけではないw 条件を後出しみたいになってきたのでまとめてざっくり書くと ・ある程度の頻度で変わるデータを元に矩形や楕円、円、折れ線、Textを含めていろいろな描画要素を使って描画をしたい。操作によっていくつかの描画要素の位置やサイズなどが変更される可能性がある。 ・縦軸や横軸のMin,Maxが操作によって変わったりする。単純にScaleTransformやTranslateTransform的なことで対応できない場合が多く存在する。 ・各描画要素に対するマウスイベントなどはその上のコンテナなどで処理するため単純に描画が早くできればいい。 超ざっくりいうとGrahics.DrawRectangleとかDrawLine,FillEllipseなどの描画が高速にできればいい。
624 名前:デフォルトの名無しさん mailto:sage [2009/09/29(火) 22:57:30 ] ふと新しいLet's noteの仕様を見ていたら 導入済みソフトウェアのところにSilverlightの文字が。 club.panasonic.jp/mall/mylets/open/s/spec.html MSが入れさせているのかな? なにはともあれ、デフォルトで入って普及していくのはうれしいね。
625 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:12:48 ] ようやく秋モデルが発表か。 先週はどこにも情報がなかったわ。
626 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 00:15:45 ] 冬モデルかw
627 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 06:31:50 ] いまさらレッツって誰が買うの?
628 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 06:53:44 ] >>627 君は知らないんだろうがLet's NoteはノートPCじゃ売れ線なんだよ。 上から目線がかっこいいと思ってたらそれは間違いだよ。 ただの痛い人w
629 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 06:57:08 ] 前ならいざ知らず、今だとレッツの利点とかもだいぶ薄れてないか? 特に高すぎ。
630 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 07:36:01 ] 液晶がクズすぎる。 Rのファンレスまでが華。昨今のは買う価値ゼロ。
631 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 09:10:57 ] モノは悪いが売れ筋って何ら矛盾はないだろ
632 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 12:26:31 ] 個人のPC覗くと意外に高い割合でSilverlight入ってるよなあ
633 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:09:35 ] DataGridの行ヘッダって、 1行目:AAA 2行目:BBB って出来たりしますか? めっちゃ悩んでます・・・・。
634 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:14:07 ] テンプレート作ればどうにでもなる msdn.microsoft.com/ja-jp/library/cc189093%28VS.95%29.aspx
635 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:16:03 ] 間違えた >>634 も参考になるけどこっち msdn.microsoft.com/ja-jp/library/cc278066%28VS.95%29.aspx
636 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 22:35:26 ] さんくす。 この書き込みが終わったら見てみます。 やー、しかし全然わからんです。 次のプロジェクトでひょっとしたらSilverLight使うかもしれないんで調査してるんですが、 まとまった資料はMSDNぐらいしかネットには転がってないみたいですね。 WPF未経験でSLやろうとしてるんですが、正直しんどい。 SL使わない可能性もあるので、本買うのもシャクだし・・・(しかも2の本しかないし)。 でもXAMLいまいちピンとこないや。 本買うしかないのかー。
637 名前:デフォルトの名無しさん mailto:sage [2009/09/30(水) 23:58:32 ] >>636 WPF未経験の俺が3週間くらいで使えたから頑張れ。 英語の資料とサンプルコードは腐るほど落ちてるから楽。 ビデオ解説も分かりやすい。 一応日本語のチュートリアルもある ttp://silverlight.net/learn/international/
638 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 00:08:17 ] 本ぐらい時給換算したら安いものだろ
639 名前:636 mailto:sage [2009/10/01(木) 02:16:33 ] >>637 ありがとうございます! こちらも見てみます! >>638 何がお勧めですかね? Amazonではどの本も評価低いみたいなので・・・。 XAMLの構文の基礎が1から詳しく載ってる本があれば良いのですけれど。
640 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 07:32:22 ] Blend評価版を使って、出てきたXAMLを読めば良い。
641 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 08:57:50 ] 俺的にはEssential.WPF でももう洋書とかでもっと良いのでてそうだなー
642 名前:デフォルトの名無しさん [2009/10/01(木) 09:06:25 ] XAMLの理解にはこれっぽちも役に立たないけど「Silverlightで開発するデータ駆動アプリケーション」は良書。 でも翻訳が下手(これはかなり下手な部類じゃないかと思う)で読みづらいのが残念。
643 名前:デフォルトの名無しさん mailto:sage [2009/10/01(木) 23:39:51 ] Winアプリの作成経験が豊富だと、その分頭をやわらかくして挑む必要があると思う。 あまり凝らなければいいけど、ちょっと凝ったことしだすとあっちこっちでゴツンゴツン壁に当たります。 私が一番最初に引っかかったのは、Canvasにコントロール配置するときに、Width、Heightはあるのに、 Left、Topが無かったこと。(Blend未使用) ?が頭の中駆け巡りましたよ。ありえね〜だろと。 今でも何で Canvas.Topと書かないといけないのかは不明です。 Winアプリなら、Top、Leftで親コントロールに対する位置ってことなのに・・・。 同じでいいじゃん。
644 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 00:39:38 ] Gridに配置する時、Top,Leftなんてプロパティは要りません
645 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 01:03:26 ] 値が無効になればいいだけです。 例えばテキストボックスの ScrollBarsの設定が Multilineの値によって 有効無効になるように。
646 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 01:06:44 ] >>644 特定の条件のときに不要になるプロパティは元から不要? 頭おかしいんじゃねーのか?
647 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 01:07:59 ] 添付プロパティの話?コンテナによって子に追加されるプロパティ だからだよ。 >>644 がいっているように「子を座標指定するコンテナ」な Canvas だから Top, Left が必要なんであって Grid なら Row, Column、 DockPanel なら Dock とコンテナによって子に必要なプロパティが 変わる。つまりコンテナが A だったら子にこのプロパティが必要と いった子に持たすべきだけどその内容はコンテナの種類に依存する プロパティ。 から Container.PropertyName で子に指定できるコンテナ依存な プロパティを作っただけ。
648 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 01:23:01 ] 新しいPanelを作って、それ専用のプロパティが必要になる場合もあるしね。
649 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 01:27:12 ] それって実装はどうなってるん? 文字列キーでのPropertyBagのようなもの?
650 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 02:01:22 ] 文字通り添付プロパティを実装してみれば想像つくだろ。 スニペット(C#)は propa で出るから読んでみれ。 >>646 なんという態度。
651 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 09:17:17 ] >650 やはりそういう実装か・・・ コンテナ側が持つ方がスマートそうだが。添付プロパティのやり方はどうも好きになれん。
652 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 10:19:14 ] >コンテナ側が持つ方がスマート コードで書く場合はね。 多分XAMLで書く都合上の導入なんじゃねぇかなぁ>添付プロパティ
653 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 10:25:41 ] まぁ、回りくどい感じはするね
654 名前:デフォルトの名無しさん mailto:sage [2009/10/02(金) 11:44:44 ] 2Dゲームの移動処理を実装する場合、 Canvas.LeftProperty(TopProperty)をSetValueするのと、 オブジェクト毎にTranslateTransform作っておいて、 それのXとYいじるのではどちらがいいんだろう?