タグ

ブックマーク / blog.okazuki.jp (17)

  • Visual Studio で一番費用対効果の高いショートカット「Ctrl + .」 - かずきのBlog@hatena

    今日は、Visual Studio 2019 Launch Event in Tokyo で登壇してきました。 資料はこちらです。 Visual Studio 2019 の個人的なお勧め機能(発表時点) from 一希 大田 www.slideshare.net とりあえず個人的に便利だと思ってる機能とかを中心に色々話したのですが、その中で一つだけ覚えてもらいたい機能として Ctrl + . のショートカットを紹介しました。 何が起きるの? クイックフィックスを起動するショートカットになります。マウス操作でいうところの電球マークをクリックする操作になります。 出来ること 色んなことが出来ます。 名前変更 前にも書きましたが編集名やクラス名の変更が出来ます。 blog.okazuki.jp 変えたい変数やクラス名を普通に変更して Ctrl + . を押して Enter。 個人的には Ctrl

    Visual Studio で一番費用対効果の高いショートカット「Ctrl + .」 - かずきのBlog@hatena
    mac10
    mac10 2019/04/22
  • UWPで電話だけにアプリバーを出したい - かずきのBlog@hatena

    matatabi-ux.hateblo.jp に乗っかりネタです。その上、VS2015RTMを入れちゃったので29日までWin10SDK入れれないので妄想で書いてます(重要) 別画面アプローチ 電話とPCは画面大きく違うから別画面で作ればいいじゃん?っていうのは個人的に賛成です。1画面は苦しい。 でも… 同じ画面に押し込めたいときもあるというか、同じ画面に押し込むときはどうしたらいいの?というのを考えてみました。頭の体操ですね。 まず、7インチより小さい端末の場合電話であるとみなします。そうするとUWPのサンプルにある github.com を使うと出来ます。以下にあるコードのように、デバイスが何インチかをとることが出来ます。(それC++でできるよ!事案) github.com #include "pch.h" #include "DisplaySizeClass.h" #include

    UWPで電話だけにアプリバーを出したい - かずきのBlog@hatena
    mac10
    mac10 2015/07/22
  • Windows ストア アプリでスナップ中のアプリに共有をすると、コレクション操作でInvalidCastExceptionがおきる #win8dev_jp - かずきのBlog@hatena

    ちょっと悩んだのでメモです。共有ターゲットコントラクトを実装していて、共有されたものをコレクションにためて保存するということをやっていたのですが、アプリケーションがスナップ表示中の時に共有ターゲットにしてデータを追加するとInvalidCastExceptionが起きて困ってました。エラーメッセージは以下のような感じです。 型 'System.Collections.Specialized.NotifyCollectionChangedEventHandler' の COM オブジェクトを クラス型 'System.Collections.Specialized.NotifyCollectionChangedEventHandler' にキャストできません。 COM コンポーネントを表す型のインターフェイスを COM コンポーネントを表さない型にキャストすることはできません。 ただし、基に

    Windows ストア アプリでスナップ中のアプリに共有をすると、コレクション操作でInvalidCastExceptionがおきる #win8dev_jp - かずきのBlog@hatena
    mac10
    mac10 2012/12/13
    スナップからは呼び出せなくてもいいですよね、と回避した記憶がw ちゃんと対応できるんだ
  • ListBoxに追加されたアイテムを一回だけアニメーションさせたい - かずきのBlog@hatena

    というプログラムのリクエストを受けたので作ってみました。とりあえず、響きだけ見てみると簡単そうなのですが、これが意外に厄介。克服しなければならない課題がいくつかあります。 課題は主にListBoxのコレクションの仮想化に起因する問題になります。 Loadedイベントでアニメーション(VSMの切替やStoryboardのキック)するとListBoxItem再利用時にアニメーションが実行されない ListBoxのItemTemplateをUserControlに切り出してUserControlのDataContextの変更を監視して、アニメーションすると、新規追加じゃないアイテムでListBoxItemの再利用が行われるとアニメーションしてしまう ということでやってみよう 基的なアプローチはListBoxのItemTemplateをUserControlに切り出してUserControlのD

    ListBoxに追加されたアイテムを一回だけアニメーションさせたい - かずきのBlog@hatena
    mac10
    mac10 2012/12/04
  • Windows ストア アプリの多言語対応用メモ - かずきのBlog@hatena

    id:ch3cooh393先生のところにプログラムでやる方法が書いてあります。 http://d.hatena.ne.jp/ch3cooh393/20120921/1348212352 公式ドキュメント的にはここ http://msdn.microsoft.com/ja-jp/library/windows/apps/xaml/hh965329.aspx そのほかに専用ツールも用意されてるみたいです。 Visual Studio 2012 を使った Windows ストア アプリ開発のための多言語アプリ ツールキット とりあえず後者試してみようかな。

    Windows ストア アプリの多言語対応用メモ - かずきのBlog@hatena
    mac10
    mac10 2012/10/16
  • Windows 8のUXガイドライン! #win8dev_jp - かずきのBlog@hatena

    ファイルをダウンロードしてみるとWin8_UXG_RTM.pdfですってよ!RTM!!RTM!! Metro スタイル アプリの UX ガイドラインの索引 これでWindows ストア アプリ作る時のUXの参考になりますね!ということで開いてみると…。 いきなりMetro(コードネーム)。まだ正式版ってわけではないのかな。Windows ストア アプリの新しいWindowsエクスペリエンスを作りこむためのバイブルとして。

    Windows 8のUXガイドライン! #win8dev_jp - かずきのBlog@hatena
    mac10
    mac10 2012/09/14
  • Windows ストア アプリで重要な非同期プログラミング(C#)について復習 - かずきのBlog@hatena

    ここでは、C# 5.0で追加された非同期プログラミングのための構文について説明します。 非同期プログラミングの必要性 非同期プログラミングは、Windows ストア アプリでは重要な要素です。50ms以上かかる可能性のあるAPIのほとんどが非同期として提供されています。これは、時間のかかる処理を、同期的に呼び出した場合にアプリケーションの応答が、止まってしまうという問題を起こさないためです。時間のかかる処理を同期的に行った場合のイメージを以下に示します。 このような処理は、タブレットなどのタッチユーザーインターフェースではユーザーに非常にストレスになります。Windows ストア アプリでは避けるべき挙動になります。ここで、時間のかかる処理を非同期に行った場合のイメージを以下に示します。 このような処理を簡単に実装できるようにC#5.0から導入されたasync修飾子とawait演算子につい

    Windows ストア アプリで重要な非同期プログラミング(C#)について復習 - かずきのBlog@hatena
    mac10
    mac10 2012/09/10
  • AppBarにボタンを置く - かずきのBlog@hatena

    この記事の内容はWindows 8 CPの内容にもとづいて記載しています。Windows 8でMetro スタイルアプリケーションをいじいじしてるのですが、なかなかティーンと閃かない今日この頃です。ということで備忘録もかねて小ネタを1つ。 Metro スタイルアプリケーションでは画面にはコンテンツを表示するものでボタンとかを置いてごちゃごちゃさせるのは基的にNGという感じの雰囲気を受けます。あえてボタンを置くなら明確な理由が必用です! じゃぁボタンどこに置くの?という話しになりますが、これはAppBarに置きます。画面の下から上にすすすっと指を滑らせると出てくるあいつです。(マウスだと右クリック) ここに表示させるボタンですが基的に丸で囲まれてる中に動作を表す文字が1つ含まれてるというのが基的なスタイルです。ボタンだけじゃどう動くのかわからないというものは、ボタンの下にテキストを表示

    AppBarにボタンを置く - かずきのBlog@hatena
    mac10
    mac10 2012/08/26
    BottomAppBarの配置はVSからアウトラインにドロップできなくてBlendを使う必要がある(VSからもできそうなのになぁ・・・)
  • Metro スタイルアプリケーションで実験コードを書くとき - かずきのBlog@hatena

    GUIアプリケーションで実験コード書くのってちょっと苦痛じゃないですか?個人的には苦痛です。さらに、Metroスタイルアプリなので現在のCP版だと、いちいちインストールしたりエミュレータ起動させたりとちょっとお試しするのにもげんなりです。 単体テストしようぜ! ということでどうするかというと単体テストやるのが個人的におすすめです。確かExpress版でも単体テスト機能サポートされると記憶しているのでがんがん使っていきましょう! やり方 Windows Metro styleの下にある単体テストライブラリを選択します。そうすると単体テストクラスが1つ作られたプロジェクトができるので、そこにお試しコードを書いていきます。 using System; using System.Collections.Generic; using System.Linq; using System.Text; u

    Metro スタイルアプリケーションで実験コードを書くとき - かずきのBlog@hatena
    mac10
    mac10 2012/06/22
  • Live SDKというものがあってSkyDriveにアクセスできるそうな - かずきのBlog@hatena

    2011年12月にLive SDKというのがリリースされてて、これを使うとWindows Live ******のサービスがアプリケーションから使えるんですってね!!知らなかった! SkyDriveとかを使うとWindows 7/8, Windows Phone, Android, iOS, Web Serviceで同じストレージを共有したサービスとか自前でストレージ用意しなくてもユーザーごとに最大25GBまで使える領域が手に入っちゃうとか素敵じゃないですか? ということで参考になりそうなサイトをいくつかピックアップ(といってもぐぐったらすぐ出てくる有名どころばかりですが) Windows 開発統括部Blog クラウド アプリをサポートする新しい SkyDrive の API について まず、Live SDKがリリースされたときの記事です。もとが英語で翻訳したやつなので日語に違和感を感じ

    Live SDKというものがあってSkyDriveにアクセスできるそうな - かずきのBlog@hatena
    mac10
    mac10 2012/06/14
    LiveSDKについて
  • 程よい余白を持ったGridViewを定義しよう - かずきのBlog@hatena

    Windows 8 CP時点の情報です。グリッドアプリケーションのテンプレートでアプリケーションを作るとこんな感じの構造でアプリが作られてます。 <ScrillViewer ...> <GridView ... > ... </GridView> </ScrollViewer> 要は、ScrollViewerの中にGridViewが入ってる感じです。GridView自体も中身があふれたらスクロールバーを出せるというのに。これは個人的な予測だと、メトロアプリっぽい余白を確保するためだと思うんですよね。前の記事で書いたあの余白です。 これを、確保するためにScrollViewerを置いて、その中にマージンを確保したGridViewを置いてる感じです。グリッドのアプリケーションを新規作成の状態で実行するとこんな感じです。 ここでポイントなのは、少しスクロールさせたときは左側の余白は流れて画面外に

    程よい余白を持ったGridViewを定義しよう - かずきのBlog@hatena
    mac10
    mac10 2012/06/11
  • WinRTとWPFとSilverlightと時々クラウディアさん - かずきのBlog@hatena

    Windows 8の話題性から新たに追加されたWinRTというネイティブな環境が最近ホットです。Windows 8の目玉機能のMetroスタイルアプリケーションを作るために使用するので今一番あついテクノロジだと個人的に思ってます。ちょっとつらつらと駄文を書いてみようかなと思い書いてみます。 WPF・Silverlightとの対比・・・ それと対比されるテクノロジとしてWPFとSilverlightがあります。個人的には、同じようなスキルセットでものを作れる環境というだけで、そんなに競合するものではないと感じているのですが、世の中だと、そう捉えられてるわけでもないのかなーという雰囲気を感じてたりもします。 WPF WPFは、今更説明するまでも無いですが.NET3.0から追加された現時点で最新の、いわゆる普通のWindowsアプリケーションを開発するためのプラットフォームです。 .NET Fr

    WinRTとWPFとSilverlightと時々クラウディアさん - かずきのBlog@hatena
    mac10
    mac10 2012/05/08
  • WinRTでのXAMLの名前空間の定義 - かずきのBlog@hatena

    この内容は、Windows 8 CPにもどついて記載しています。正式版とは異なる可能性があります。WPF, Silverlightではclr-namespace:名前空間;assembly=アセンブリ名でした(MSDNの該当記載箇所)がWinRTのXAMLでは変わっていました。Visual Studioのデザイナ上ではエラーにならずに実行時に例外という嫌な感じではまってしまったのでメモします。 Porting Silverlight or WPF XAML/code to a Metro style appに記載がありました。 Instead of using a clr-namespace:/assembly= qualifier set for code-to-XAML namespace references, you only use the using: qualifier. X

    WinRTでのXAMLの名前空間の定義 - かずきのBlog@hatena
    mac10
    mac10 2012/05/08
  • WinRTアプリケーションでSleepしたい - かずきのBlog@hatena

    的に、Sleepなんてすることはあまりないと思うのですが、ちょっとしたサンプルで重たい処理をエミュレートしようと思ってThread.Sleepを呼ぼうと思ったらThreadクラスがない!?古き良き?Threadクラスを使った並列処理なんてクレイジーどころか存在しないものになってしまったのですね。 ということで代替の方法です。同じことに困ってる先人はいるもので、下記のMSDNのフォーラムでそのまま質問があがってました。質問のほうでは、Timerも無いよ!?ということも聞いてるので見てみるといいかもしれません。 Timers or Sleep method equivalent Sleepしよう ということで数秒まって処理をするということをやってみたいと思います。使うメソッドはTaskクラスのDelayメソッドです。 画面にボタンを1つおいてボタンのクリックイベントハンドラと、重たい処理を

    WinRTアプリケーションでSleepしたい - かずきのBlog@hatena
  • Reactive Extensions入門「まとめ」 - かずきのBlog@hatena

    2012/03/06 再入門という形で書き直しています。 http://d.hatena.ne.jp/okazuki/20120305/1329923070とりあえず、14回くらい書いたので現時点でのまとめです。 若干Reactive Extensionsに対する熱もさめてきたので、これからはペースが落ちると思われます! Reactive Extensionsを始めてみた Reactive Extensions入門 1 Hello world Reactive Extensions入門 Hello worldその2 Reactive Extensions入門 3「Where」 Reactive Extensions入門 4「Observableを作成する便利なメソッド」 Reactive Extensions入門 5「イベントを監視する」 Reactive Extensions入門 6「非

    Reactive Extensions入門「まとめ」 - かずきのBlog@hatena
    mac10
    mac10 2010/10/28
  • Visual Studioから使うExpression BlendのBehavior達 - かずきのBlog@hatena

    Expression Blend 3あたりから取り入れられたBehaviorという便利な奴らがいます。これを使うとコントロールなんかのイベントに応答して何かしたりとかいうことをデザイナからポトペタで実行することができます。 このBehaviorの恩恵をフルに受けようと思うとExpression Blendが必要になりますが、Behaviorを使ったり作ったりするぶんにはExpression Blendが無くてもOKです。ということで早速使ってみます。 Behaviorを使うには、以下のサイトからExpression BlendのSDKをダウンロードしてインストールする必要があります。(無料) .NET FW4:http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=75e13d71-7c53-4382-

    Visual Studioから使うExpression BlendのBehavior達 - かずきのBlog@hatena
  • MVVMパターンでViewModelを楽に作る方法 - かずきのBlog@hatena

    MSDNマガジンの英語版の最新のを見てたら、こんな以下の記事を見つけた。 http://msdn.microsoft.com/ja-jp/magazine/ff798279(en-us).aspx まだ全部見てないけど、ここにViewModelを楽に作る方法が書いてあっておぉ〜っと思ったので紹介します。 このテクニックが使えるプラットフォームは.NET Framework 4です。 ViewModelは、作るとViewとModelを切り離せるけど、Modelをラップするようなプロパティを大量に作らないといけません。 例えば、以下のようなModelがあったとして public class Person { public string FullName { get; set; } } 以下のようなViewModelを作ります。 // ViewModelBaseはINotifyPropertyC

    MVVMパターンでViewModelを楽に作る方法 - かずきのBlog@hatena
  • 1