まぐらぼ

Unity/Android、Microsoft系のWPFをやってます。

windows8

Windows8.1ストアアプリ学習に要するコスト

この記事はゲーム・カーナビ業界のエンジニアを想定して書いています。ストアアプリはWPFやSilverlight経験者なら容易です。C#やC++CLI未経験の「標準C/C++使い」のストアアプリ習得は本人の見積もりよりハードル高い事が多いです。ゲーム屋さんだとサンプル…

ストアアプリでのScrollBarの落とし穴

ストアアプリのScrollBarはデフォルト設定だと表示されません。デフォルト状態では[プロパティ]-[その他の設定]-[IndicatorMode]がNoneになっています。有効値を選択して下さい。WPFではデフォルト状態で問題なく表示できるだけに少しはまりました。

MVVM Light toolkit

◆MVVM Light toolkitVS2013だとストアアプリ用の新規プロジェクト作れず。WPFだと可能。 VS2012はストアアプリ、WPFとも可能。VS2013ストアアプリはプロジェクト作成後にNuGetで「Install-Package MVVMLight」で「MvvmLightLibs 4.3.31.1」がインストールさ…

ListViewの選択時にコマンド送信する方法

ストアアプリのListViewはICommandが無いため、ListItem選択時にコマンド送信できません。適当なボタンに名前をつけて、Commandプロパティを利用すると、Viewのコードビハインドからコマンドを投げられます。 private void ListView_SelectionChanged(object…

Windows8.1環境でVisualStudio2010のService Packインストール失敗

Windows8.1環境でVisualStudio2010(VS2010)のService Packをあてると失敗します。前もってDLしたISOイメージを使う事で回避できます。詳しくはこちらを参照

トースト通知を表示するには

ストアアプリでトースト通知するときはマニフェストで機能宣言をする必要があります。忘れると結構悩みますのでご注意下さい。備忘録として記録しておきます。コードは下記の通りでこぴぺでも問題なく動くはず。 public void ToastMessage(string msg) { Toa…

ストアアプリでは「ViewModelからViewを操作する」が出来ないのか?

TextBoxとViewModelプロパティをデータバインドして、ViewModel内でプロパティを操作するとTextBoxに反映されます。これがTextBoxではなくListViewの場合は反映されません。TwowayでもOnewayでも同じ結果でした。 //こう書くとListViewの表示は消えます。 Li…

RelayCommandについて

RelayCommand(DelegateCommand)の実装は自分で組込む必要あるっけ?と疑問に感じたのでメモります。◆VisualStudioのバージョンによる差異 VS2013の場合 →ストアアプリグリッドアプリケーションを新規作成するとcommon/RelayCommand.csが自動生成されます。VS…

C#で文字列を反転する

文字列なのだからStringクラスだろうとおもって string s; String.Reverse(s)やs.Reverse();を色々といじってみたけど失敗した。結局こう書くとできました(^^;) char[] chars = input.ToCharArray(); Array.Reverse(chars); var ret = new string(chars);

ストアアプリが起動直後にハングアップする問題3

VSインストールやupdate時にavast有効だとダメな気がする... [現象] IDEから起動したストアアプリが起動画面のまま処理が進まない...(あ) 場合により例外が発生する...(い) その後は再配置不可およびゾンビプロセス化してアプリ再実行ができずPC再起動となり…

ストアアプリが起動直後にハングアップする問題2

追記 5/31 ウイルスソフトを無効にしてVS2013修復インストールで改善しています。様子見。 追記:関係なかったです。再発しました。Visual Studio 2013 update2で、ストアアプリのテスト証明書を自分で作成するという対策を二日間試したところ、例外&ゾンビ…

ストアアプリが起動直後にハングアップする問題

ハングアップの理由を調べていました。ファイルが消去できないのはFileOpen中だからです。openfiles を使うには管理者権限でDOS窓開いて openfiles /local on」して再起動する必要があります。openfilesコマンドで開いているファイルリストを出力してプロジ…

WinRTストアアプリ起動直後に例外発生する件

ストアプリ開発中になぜか「xxx.exeでハンドルされない Microsoft .NET Frameworkの例外が発生しました。」というダイアログが出て、再配置不可&ゾンビプロセスになる事があります。 困っている点が2個あります。(1).例外が発生する以前動作していたプロジ…

VisualStudio の単体テスト

サンプルの備忘録メモなんだけど、サンプルが行方不明になった(;>_ VisualStudioの単体テスト機能、テストエクスプローラーから起動する単体テストも属性とリフレクションを使っていると推測されます。単体テストプロジェクトを使っています。テスト対象のク…

Attribute 属性と単体テスト

少し古いサンプルが見つかりました。 JSON.NETやってるときAttribute(属性)を調べました。[PostTransformer("test", Precedence = 5)] class SubClassA : BaseClass { public SubClassA() { //; } }上記クラスの"test"やPrecedence=5を取り出す方法です。属…

ストアアプリの課金のメモ2

WebPayを使ったサンプルです。C#で書いています。[元ネタ]WebPay APIでカード決済機能をWindowsストアアプリに実装するには (1/4)(1) ユーザ登録 https://webpay.jp/login の新規登録から。試用ではキャリア登録メール不要でした。(2) CardRequestString a…

ストアアプリの課金のメモ

課金関係の情報メモです。(あ)MS社員のブログより転載 「 ・「 ゲーム 」カテゴリは、最もダウンロード数が多く、全体の 40% を占める ・"アプリ内購入"は、Windows ストア で 2013年に発生した売り上げの 30% を占め、2014年に入ってからも急速に拡大中 ( …

MVVMのお勉強

~20代の好奇心が旺盛なときは新しい知識を得ると自分で工夫してコードを記述していましたが、年を取ると技術記事や他人のコードをみても「ふーん」で済ます事が多くなります。自分で考えてコードを書かなくないので直ぐに忘れてしまいます。インプットより…

JSON.NET は Newtonsoft.json

JSON.NETNewtonsoft.Json = JSON.NETだ。このドキュメントは見やすいです。

async/awaitの罠

はまったのでメモります。Windows8ストアアプリ基盤のWinRTは非同期設計のため、C#5.0のasync/awaitと一緒に使う事が多いです。WinRT-APIを待つためawaitを使うと関数先頭にasyncをつける必要あります。このとき何も考えずに使いがちですがasyncをつけると非…

壁紙が勝手に変更される

追記:BING Desktopがやらかしやがった! windows 8.1 up1とBING Desktopを同時にインストールしたら、壁紙が勝手に変更されるようになりました(;>_この画面(↓)で、なんども単色に設定しているのですが...

QRコードと1Dバーコード画像から内容を読み取るサンプル

QRコードと1Dバーコード画像から内容を読み取るサンプルを作成しました。Zxing.Net を使用してます。1D/QRコード画像はwikipediaより拝借しています。Zxing.Netは、バーコードデバイスから直接は出来ないようで一旦画像にする必要あります。有料コンポーネン…

JSONのエンコードとデコード

JSONのエンコードとデコードのGistです。Twitterサンプルを作成したときに復習したので記憶が定着する事を願ってブログに記します。なおクラスのシリアライズとは別物です。これはMETROスタンダードの Windows.Data.Json のAPIを使っています。DynamicJsonは…

Windows8.1ストアアプリ開発での配置エラー

Windows8.1ストアアプリの開発において配置エラーが発生する場合、次の手順で配置エラーを解消できます。1.プロジェクト右クリック->[プロパティ]->[{プロジェクト名}ダイアログ]を開きます。 2.[署名]->[アセンブリに署名する]にチェックを入れる 3.プルダ…

コードスニペットの追加方法

コードスニペットの追加方法です。1. 拡張子*.snippetのXMLファイルを作成する(文字コードはUTF8) 2. スニペットを定義する 3. Visual Studioの[メニューバー]->[ツール]->[コードスニペットマネージャー]ダイアログを表示する 4. 言語を選択してインポー…

遷移先ページの指定でリフレクションを使う。

リフレクションは文字列からクラス情報を参照する機能。 たとえば遷移先のページをswitch-caseで switch( index ) { case 1: //page1 this.Frame.Navigate(type(Page01), itemId); break; case 2: //page2 this.Frame.Navigate(type(Page02), itemId); break…

ストアアプリでのTwitter/OAuth

WPF版はこちら。OAuth認証とTwitter APIv1.1タイムライン取得 - o-maguroの日記注意点を箇条書きにします。1.VS2013だとコンパイルエラーでます。VS2012を使って下さい。 AsyncOAuth.OAuthUtility.ComputeHashがREADONLY BuildBasicParametersの引数違いCO…

デバッグ実行の画面の左上と右上の4つの数字

前から気になっていたストアアプリデバッグ実行の4つの数字の意味を調査しました。ここに説明あります。英文下の方にWindows8の場合は数字が6個と書いてありますが、実際には4個しかありません。内容も4個の場合であってるように思えます。000 000 … … 0…

Windows8のゾンビプロセス

ストアアプリ開発中に例外発生するとデバッグ実行中のアプリがゾンビプロセスとなる事があります。プロセスは[Ctrl+Alt+Del]-[タスクマネージャ]-[詳細]で確認できますが、右クリックからプロセス終了を選択しても拒否されます。PowerShellを管理者権限で起…

WPFとストアアプリ開発で役に立つネタ元。

UFOの人:ufcpp @ITのWPF記事は非常に良かった。 かずきゃん(okazuki)と酢ろぐ:CH3COOH(酢酸) 入門書とTIPS集が良い。 gloopsのMVVMの人:ugaya40 MVVMのスライドは良かった。 福井のTPLの人 PPLで悩んでる時に見て前に進めた。 福井コンピュータは新卒のと…