のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,062,908人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレMicrosoft Silverlight その7

    silverlight スレッド一覧へ / silverlight とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2104 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    651 : デフォルトの名無 - 2011/02/11(金) 06:29:20 (-1,-29,-21)
    XAML側でFillなどにARGB値を指定する場合はどう書けばいいんでしょうか
    652 : デフォルトの名無 - 2011/02/11(金) 07:26:34 (+18,-29,-3)
    "#AARRGGBB" で書ける
    653 : デフォルトの名無 - 2011/02/11(金) 07:40:23 (+44,+18,+2)
    >>652
    ありがとうございます
    654 : デフォルトの名無 - 2011/02/11(金) 12:42:38 (+33,-29,-58)
    SharpZipLib.Silverlight4.dll使ってるんだけど、ZipEntryで日本語の
    ファイル名を受け取ると、きれいに文字化けしてる。
    これ、回避する方法ない?
    バイナリでセントラルディレクトリを読んで...というのは避けたいし、
    これだけのために商用ライブラリ買うのももったいない...
    655 : デフォルトの名無 - 2011/02/11(金) 13:34:19 (-1,-29,-25)
    zip内部の話?
    解凍しても元のファイル名の文字コードそのものが
    破壊されて無いのであれば解凍後もらえるstringを一旦文字コード判定して
    S-JISならコンバートするとかすればできそう?
    656 : デフォルトの名無 - 2011/02/11(金) 13:42:36 (-1,-29,-40)
    SJIS→Unicode変換の独自実装が必要になるけどな

    どうせそこまでやるなら、SharpZipLib本体を修正した方がいいと思うが
    657 : 654 - 2011/02/11(金) 15:21:50 (+3,-30,-37)
    Stringの内部表現(バイト)を直接見る方法ってあるの? それがわからないと
    破壊されているのかどうかがはっきりしない。zipentry.nameの表示上では
    &HFE&HFF,&HFE&HFF,....の同じ化け文字が繰り返し表示される。
    658 : デフォルトの名無 - 2011/02/11(金) 15:40:01 (-1,-29,-20)
    stirngってbyte[]に変換できなかったっけ?
    chararrayでもいいけど
    659 : デフォルトの名無 - 2011/02/11(金) 16:25:55 (-2,-30,-26)
    String自体じゃなくて、Encoding.GetBytes通してならできるけど、そういうことでいいの?<内部表現(バイト)
    660 : 654 - 2011/02/11(金) 16:33:53 (+3,-30,-69)
    そこがよくわからない。
    Encoding.GetBytesって、Unicodeなどの形式に変換したBytesを取り出す
    ということなんじゃないか? Stringのポインタの先にあるメモリを直接
    見られさえすれば、とりあえず破壊されているのかどうかの判断はつくんだが。
    661 : デフォルトの名無 - 2011/02/11(金) 16:38:57 (-2,-30,-18)
    一応、unsafe文脈内で fixed(char* p = str) ってやれば、UTF16の配列としてstringの中身覗けるけども。
    662 : デフォルトの名無 - 2011/02/11(金) 16:44:39 (+58,-29,-89)
    文字化けってのがどうなってるかがよくわからんが
    ファイル名称はS-JISなのにSharpZipLibがそれを気にしないで
    そのまま処理してるとなれば
    S-JISをそのまま.netのUTF16?とかにしちゃってるんでしょ?

    だったらstringからバイト配列を取り出してそのままメモリストリームにでも突っ込むとかして
    エンコーディング処理させればS-JISからいい感じで文字が変わってそうだなと思って
    663 : デフォルトの名無 - 2011/02/11(金) 18:41:57 (+71,+29,-122)
    ドラッグして移動可能な枠をユーザーコントロールで作る場合

    Gridなどのベースの上に四角などを描画するけどマウス関連の
    アクションを拾うコードはGridに描けばいいのかそれとも上に載せる
    図形に描けばいいのかどっちなんだろう?

    以前図形単体ではうまく行ってたロジックを移植したら思ったように動いてくれない
    664 : 654 - 2011/02/11(金) 18:45:25 (+9,-30,-91)
    >> 662
     うん、たぶんそうなんだと思ってる。「String配列からバイト配列を取り出す」
    っていうのを、VBでやる方法がわからないって書いたほうがよかった。すまん。
    Silverlight用にShiftJIS->Unicodeを自前でやるライブラリは作成済みなので、
    Byte配列さえ手には入ればどうにかなるんだがな...
     素直に、SharpZipLibをゴゾゴソして、ZipEntryのNameを直接Bytesで受け取れる
    プロパティを追加するか...
    665 : デフォルトの名無 - 2011/02/11(金) 18:58:17 (+3,-30,-142)
    WinFormの方で試したけどこれで文字コードが取れるな
    private void Form1_Load(object sender, EventArgs e)
    {
    string moji = "もじ文字";
    char[] mojimoji = moji.ToCharArray();
    this.Text = "";
    foreach (char c in mojimoji)
    {
    this.Text += Convert.ToInt16(c).ToString("X4") + " ";
    }
    }
    666 : デフォルトの名無 - 2011/02/11(金) 19:06:38 (+10,-29,-10)
    >>663
    自分が作ったパワポっぽいものでは、
    上の図形(FrameworkElement)側で拾うようになってる。
    667 : デフォルトの名無 - 2011/02/11(金) 19:20:07 (+5,-29,-11)
    >>666
    ありがとうございます。
    移動についてはGirdごと移動してますか?
    それともFrameworkElement側だけですか?
    668 : デフォルトの名無 - 2011/02/11(金) 19:48:50 (+43,-29,-21)
    >>663
    GridSplitterでは要件を満たさないの?
    669 : デフォルトの名無 - 2011/02/11(金) 19:58:50 (+4,-30,-93)
    >>664
    SharpZipLibが元のバイト列UTF16として解釈しているなら
    Encoding.Unicode.GetBytes(文字列)

    UTF8として解釈しているなら
    Encoding.UTF8.GetBytes(文字列)

    ただし、Unicode文字として解釈できなかった部分は失われて復元できないので、
    SharpZipLibを書き換えた方がいいだろうね
    670 : デフォルトの名無 - 2011/02/11(金) 20:16:31 (+102,+29,-85)
    >>668
    今SilverLightを勉強しながらなのでどれがいいかってさっぱりなんですよね
    とりあえずやろうとしてるのがグラフィックツールなどで図形の大きさとかをいじれるように
    表示するガイドマーカーをsilverlightなりの実装方法に変えてる途中なんですよ
    671 : デフォルトの名無 - 2011/02/11(金) 20:35:54 (+3,-29,-203)
    >>667
    コード見直してみたが、
    ラップコンテナとしてCanvasを使っていったんそれに詰めて、
    MouseMoveが来るごとにCanvas.SetTopなんかの添付プロパティで操作するようになってた。

    なにをしたいかによるけど、
    StackPanelの子なんかをドラッグして並び変えたいのなら、
    ドラッグ中はいったん親コンテナから抜いてCanvas上に貼りなおして、
    ドロップ時に適当な順番に挿入する、というのがいいと思う。

    GridSpritterで用が足るのならそっちのほうが手軽だとは思う。
    672 : デフォルトの名無 - 2011/02/11(金) 20:40:02 (+104,+29,-21)
    >>670
    要するにこういうことがしたいんでしょ?
    Ms-PL扱いでいいから好きに使ってください
    http://www.dotup.org/uploda/www.dotup.org1338242.zip.html
    673 : デフォルトの名無 - 2011/02/11(金) 20:43:12 (+102,+28,-7)
    >>672
    その実行ファイルの方動かないぞ
    htmlを開けばいいんだろ?
    674 : デフォルトの名無 - 2011/02/11(金) 20:46:22 (+67,+26,-1)
    >>673
    そうです
    というか普通xap単品では開けない。
    675 : デフォルトの名無 - 2011/02/11(金) 20:48:36 (+39,+6,-57)
    忘れてた。
    1. 左上のnewボタンを押す
    2. rectボタンなどを押してから真ん中の白紙をクリックすると図形が現れる
    3. その図形をクリックする

    ってな要領。
    ちなみにまだ大きさを変える部分(ガイドマーカーをドラッグしたときの処理)は実装していない
    676 : デフォルトの名無 - 2011/02/11(金) 20:49:47 (+53,+25,-9)
    そのボタンとかなにもでないw
    真っ白w
    ブラウザ依存とかあります?
    677 : デフォルトの名無 - 2011/02/11(金) 20:58:02 (-2,-30,-43)
    mjd?
    手元のMacOSX+Firefoxでも動いたし、
    まずもってブラウザ依存してはSLの意味なす

    debugビルドのせいかもしれないので適当に考えてみます。
    678 : デフォルトの名無 - 2011/02/11(金) 21:02:51 (-1,-29,-22)
    横レスであれだが、ウチの環境ではちゃんと動いたぜ?
    WinVistaSP2+GoogleChrome。
    679 : デフォルトの名無 - 2011/02/11(金) 21:04:09 (+3,-30,-31)
    windowsXP SP3 + FireFox3.6.13 だと表示されず
    windowsXP SP3 + IE8.0.6001だと表示された

    多少SL本体もしくはxapを動かすための周辺コードに依存がありそうだね
    680 : デフォルトの名無 - 2011/02/11(金) 21:04:33 (+8,-29,-23)
    Win7x64+Firefox3.6は白紙
    IETab(IE8)なら見えた
    681 : デフォルトの名無 - 2011/02/11(金) 21:06:05 (+55,+27,-18)
    ビルド時にBinフォルダに入ってるデフォルトの出力をzipしただけだったんだが、
    そうなるといろいろチェックが大変になるかも。
    682 : デフォルトの名無 - 2011/02/11(金) 21:07:08 (+46,+18,-16)
    何か、Win版のFxが駄目っぽい雰囲気?
    683 : 680 - 2011/02/11(金) 21:09:26 (+3,-30,-115)
    >Silverlight アプリケーションでハンドルされていないエラーが発生しました:
    >コード: 2104
    >カテゴリ: InitializeError メッセージ:
    >Silverlight アプリケーションをダウンロードできませんでした。Web サーバーの設定を確認してください

    Firebugはこう言ってる
    684 : デフォルトの名無 - 2011/02/11(金) 21:13:03 (+3,-29,-130)
    実行してみて気付いたのだが、
    重なった図形があるときに下の図形をクリックするとガイドマーカーも一緒に隠れてしまうな。
    理由は
    +LayoutRoot
     +Canvas
      +ガイドマーカー
      +図形
     +Canvas
      +ガイドマーカー
      +図形
     ...
    という設計にしているせいだが、
    普通はガイドマーカーを隠さないほうがいいので、
    各図形からガイドマーカーを表示したい矩形座標を返す関数を用意して、
    ガイドマーカー自体はLayoutRootのChildrenの最上位に固定しておくほうがいいかも。
    ドラッグしたらイベントで通知して連動させるか、Bindingできるならそれで、という感じで。
    685 : デフォルトの名無 - 2011/02/11(金) 21:15:09 (+35,-28,-25)
    >Firefoxで駄目な人
    他のSLアプリをローカルで実行した場合も、同じ様に駄目なんだろうか。
    ちょっと試してみて欲しいかも。
    686 : デフォルトの名無 - 2011/02/11(金) 21:17:02 (+0,-27,-8)
    >>685
    デフォルトでFF使ってるが問題ないな
    このアプリで初めてかも
    687 : デフォルトの名無 - 2011/02/11(金) 21:28:01 (+56,+23,-2)
    >>685
    新規プロジェクト作ってみたけど動かないね
    688 : デフォルトの名無 - 2011/02/11(金) 21:43:03 (-1,-29,-5)
    FirefoxがウンカスだったでFA
    689 : デフォルトの名無 - 2011/02/11(金) 22:01:13 (+44,+16,-2)
    IE9で動いたり動かなかったりするのはなぜだ
    690 : デフォルトの名無 - 2011/02/11(金) 22:14:21 (-1,-29,-36)
    IE9の評価は、一応正式版まで待ってやれよ…w
    691 : デフォルトの名無 - 2011/02/12(土) 11:00:51 (+31,-29,-65)
    うはー最悪だ・・・

    Canvasの継承じゃなくユーザーコントロールで作り直したのに
    Slider.ValueChangedをXAMLに記述したらまた読み込み待ち画面のままだorz
    692 : デフォルトの名無 - 2011/02/12(土) 11:49:21 (+62,+29,-2)
    >>691
    お前もうソース全部さらせよ・・・
    693 : [―{}@{} - 2011/02/12(土) 11:58:16 (+1,+23,-22)
    ローカルに置いたのが動かないのは
    日本語パスの問題じゃねーの?
    694 : デフォルトの名無 - 2011/02/12(土) 13:43:06 (+56,+23,-32)
    ユーザーコントロール内部に貼り付けたコントロールのイベントハンドラを
    外部に使わせる場合はどうかけばいいのでしょうか?

    setは問題ないんですがgetがよくわかりません
    +=とかできるのが関係してるようですが・・・
    695 : デフォルトの名無 - 2011/02/12(土) 21:54:16 (+3,-30,-138)
    +LayoutRoot
     +Canvas A
      +図形
      +図形
      +図形(Point A,Point B・・)
     +Canvas B
      +ガイドマーカー A
      +ガイドマーカー B
     +Canvas B
      +tool窓

    こんな感じのレイヤーで動かしてるプログラムがあるんだけど
    ガイドマーカーAやガイドマーカーBを動かすと図形のPointAが変わったりPointBが変わったりする
    ようにしてあるんだがバインドでうまくやる方法はないだろうか?

    あとガイドマーカーが動いたりするとCanvas Aに指示を出したりするだけど
    現在はCanvas BがCanvas Aのインスタンスを持ってたりして気持ち悪い状態だったりする

    696 : デフォルトの名無 - 2011/02/12(土) 22:26:12 (+67,+29,-53)
    図形とガイドマーカーのMかVMにバインドするだけじゃないの?
    イベントハンドラに書いた処理でモデルを直接操作したり、モデルすっ飛ばしていきなりビューの要素を扱う、
    などの糞コード書いているのでなければ悩むことなどなさそうだけど
    697 : デフォルトの名無 - 2011/02/12(土) 22:42:36 (+16,-29,-59)
    >>696
    マーカーの表示位置とPointのスケールが1:1なら単純にバインドでいいんですけど
    問題は1:1.5とか1:0.5とか拡大縮小にあわせる必要があるんですよね・・

    その辺を含めて何かないかなあと思って
    698 : デフォルトの名無 - 2011/02/12(土) 23:06:17 (+34,-29,-4)
    >>697
    Binding.Converterに何か噛ませればいいんじゃないの?
    699 : デフォルトの名無 - 2011/02/12(土) 23:07:32 (+62,+29,-1)
    >>698
    おお!
    そんなのがあるんですね
    調べてみます
    ありがとうございます
    700 : デフォルトの名無 - 2011/02/13(日) 04:06:52 (+45,-30,-194)
    IsoratedStorageに自作クラスのオブジェクトを保存しようとすると
    例外が投げられる(SiteSettingsのSaveメソッド)


    型 'System.Windows.UIElement' をシリアル化できません。
    この型に DataContractAttribute 属性を設定するか、この型のメンバーのうち
    シリアル化するものすべてに DataMemberAttribute 属性を設定することを検討してください。
    または、型をパブリックにして、パラメーターなしのコンストラクターを追加することも可能です。
    こうすると、型のすべてのパブリック メンバーはシリアル化され、属性は必要ありません。


    自作クラスのプロパティにImageオブジェクトがあるからだろうけど、具体的に何をすれば良いの・・・
    MSDNでDataContractAttribute検索してもまったく理解できん死にたい
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / silverlight スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : - 2104 + 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について