タグ

ブックマーク / grabacr.net (12)

  • WPF で PowerShell コンソールを作る | grabacr.nét

    これは PowerShell Advent Calendar 2016 の 22 日目のエントリーです。 PowerShell と WPF (Windows Presentation Foundation) という単語が並んだ場合、多くの方は PowerShell から WPF ウィンドウ等の GUI を扱う方法について想像されると思いますが、エントリーはその逆です。 即ち、WPF で PowerShell コンソールを作成する手段について扱います。 最終的に、以下のような形で自身のアプリケーション内にビルトインの PowerShell コンソールを実装し、コマンドレットやスクリプトの実行とそれに派生し独自データのフィルタリング等を行えるようにします (画像はクリックで拡大されます)。 アプリケーション内にビルトイン PowerShell コンソールを搭載している身近な例としては、Win

    WPF で PowerShell コンソールを作る | grabacr.nét
  • デスクトップ アプリの生存戦略 (Desktop App Converter) | grabacr.nét

    先日開催された「めとべや東京」改め「まどすた」の 1 回目の勉強会が //build/ 2016 振り返りをテーマとして C# ユーザー会と合同で開催され、私は Project Centennial (Desktop App Converter) を題材として、以下の資料で発表しました。 また、5/23 に開催された de:code 前夜祭のアンカンファレンスでも、この資料の一部を使用しつつ 20 分ほど発表させて頂きました。 記事は、これらの発表を準備するにあたった実施した Project Centennial のセットアップ、および実行手順と、Project Centennial の登場によりデスクトップ アプリ開発者にとってどのような変化があるかについてを共有することを目的としています。 余談ですが、発表タイトルに「// 2016」と入っているのは、およそ 3 年前の「めとべや東京

    デスクトップ アプリの生存戦略 (Desktop App Converter) | grabacr.nét
  • クラシック デスクトップ アプリの Windows テーマ追従 | grabacr.nét

    Windows には、パーソナライズの一部としてテーマ設定が存在し、「アクセント カラー」を選択することができます。 また、Windows 10 build 14316 から、アクセント カラーとは別に「app mode」として Light/Dark テーマを選択できるようになりました。 UWP アプリは SystemAccentColor などの一部のリソースを ThemeResource として指定することで、Windows のアクセント カラーやテーマによって決定される色に追従することが可能です。 一方で、クラシック デスクトップ アプリにおいては、例えば WPF ではそのようなリソースが定義されておらず、フレームワークとして Windows テーマに追従する機能は実装されていません。 今回は、クラシック デスクトップ アプリにおいて、Windows のテーマ設定に追従する方法につい

    クラシック デスクトップ アプリの Windows テーマ追従 | grabacr.nét
  • Surface Book を使って 2 ヵ月が経った | grabacr.nét

    昨年 11/1 ~ 11/5 にシアトル Microsoft 社で開催された MVP Global Summit に出席しており、滞在先ホテルの近くにある Microsoft Store で Surface Book を衝動買いしました。 Surface Book は Surface Pro 4 とともに発表された Surface ブランドのラップトップ PC です。 そして今日、日での価格と発売日が発表され、購入を検討されている方も多いかと思います。 そこで、購入から 2 ヵ月ちょっと経った今、使用者として雑感をつらつら適当に述べたいと思います。 買ったもの Surface Book ・CPU: Core i7-6600U ・RAM: 16 GB ・SSD: 512 GB 仕様はこちら: http://news.microsoft.com/download/presskits/sur

    Surface Book を使って 2 ヵ月が経った | grabacr.nét
  • Microsoft MVP for Visual C# を受賞しました | grabacr.nét

    2014 年 4 月期で Microsoft MVP Award を初受賞しました。 カテゴリーは Visual C# になります。 この 1 年間、XAML を中心としたアプリ開発技術に関する活動をしていましたが、まさかの Visual C# カテゴリーで頂きました (Client Development だと思ってた…)。 趣味だけでなく仕事でも何かと縁があり思い入れの強かった言語なだけに、このような形で評価して頂けたことを大変光栄に思います。 めとべや東京勉強会をはじめとしたコミュニティの活動でご協力頂いた方々、審査に関してご相談に乗って頂いた方々、当にありがとうございました。 と言っても、これを境にやることが大きく変わるわけではありません。 XAML の柔軟さと表現力に魅せられて 3 年、私がいま最も注目しているのが XAML-based platforms の行方です。 Win

  • WPF でウィンドウ位置とサイズを保存・復元しよう | grabacr.nét

    デスクトップ アプリで、ウィンドウの位置を保存したいという要望はちらほら来ます。 ただし、真面目に実装しようとすると、細かい挙動まで実装するのが大変面倒です。 最大化して終了したら、最大化する直前のウィンドウの位置とサイズも保存しておかなければならなかったり。 何かベスト プラクティスはないかなーと思って調べたところ、MSDN に該当するコードがあったので、やってみました。 元ネタはこちら。 http://msdn.microsoft.com/ja-jp/library/vstudio/aa972163(v=vs.90).aspx 結局 P/Invoke だった! いかな WPF といえど所詮は Windows の民。P/Invoke の運命からは逃れられないのだ… という冗談は置いておいて、SetWindowPlacement 関数と GetWindowPlacement 関数を使います

  • デスクトップ アプリのタイルをカスタマイズする | grabacr.nét

    あけましておめでとうございます。 今年も C# や XAML を中心に情報発信していきますので、どうぞよろしくお願い申し上げます。 さて、当ブログで公開している艦これツール「提督業も忙しい!」ですが、version 1.2 で @Nrtwd 様より頂いたアイコンが実装されました。 今までは、[スタート] にショートカットを作っても、こんな残念な感じになっておりましたが… version 1.2 からこんな感じに。トースト通知にもアイコンが表示されます。すばらです。 だがしかし、タイルの色は黄色っぽくなるのかなーと思っていたら、なぜかグレーのまま。 他のデスクトップ アプリはアイコンの色に近いタイルの色が自動選択されているのに、KanColleViewer はなぜグレーなのか… ということで、今回はデスクトップ アプリが [スタート] 画面に表示されたときのタイルをカスタマイズします。Win

    デスクトップ アプリのタイルをカスタマイズする | grabacr.nét
  • Windows 8.1 でバージョン判別するときの注意点 | grabacr.nét

    Windows 8.1 固有の機能 (例えば、Per-Monitor DPI とか) を使いたい場合などで、実行中の OS が Windows 8.1 かどうか判別するためには、 OS バージョンが 6.3 であるかどうかを確認すればよい、ということになります。 バージョンを取得してみる というわけで、.NET Framework のアプリケーションでバージョンを取得します。 オーソドックスに、Environment.OSVersion を使いましょう。 バージョンを表示するだけの簡単なコンソールアプリを組みました。

  • Room metro Tokyo #2 で LT しました | grabacr.nét

    ご無沙汰です (死 艦これにはまりすぎました。。。 10/12 に開催された めとべや東京勉強会 #2 にて LT させて頂きました。 内容は 前回 の続きで、Windows 8.1 RTM 版において Per-Monitor DPI がどうなったのかと、その WPF での対応方法のお話です。 残念ながら Windows 8.1 RTM でも WPF アプリケーションは Per-Monitor DPI 非対応 (というか explorer.exe ですら非対応) で、DPI 仮想化でボケます。 LT 中にも言いましたが、この DPI 仮想化でボケた状態というのは、画面解像度がディスプレイの適正解像度と合っていない状態で使っている (たとえば、1920 x 1080 のディスプレイを 1366 x 768 で使ってる) ような気持ち悪さがあるので、私は到底我慢ならないのです。 モニターごとに

  • デバイスがデジタイザー入力に対応しているかどうかを調べる | grabacr.nét

    またまた Windows デスクトップ (WPF) のお話です。 先日の めとべや東京勉強会 にて、デスクトップ アプリのタッチ エクスペリエンス的な話を少しだけさせて頂きましたが、タッチ デバイスでの操作のためにタッチ向けの UI を用意するのが理想です (Office のタッチ モードのようなやつ)。 そこで、実行中のデバイスがタッチ デバイスかどうかを調べたい場合があります。タッチ デバイスであれば、それ専用の UI に切り替える、といったことができたり。 デスクトップ アプリの場合は user32.dll の GetSystemMetrics 関数 で、引数に SM_DIGITIZER を指定すると取得できます。この関数の .NET ラッパーである SystemParameters クラス から取ってこられないものかと期待したのですが、現時点では SM_DIGITIZER にマップ

  • Windows 8.1 Preview きた! | grabacr.nét

    きました。 サンフランシスコで Build 2013 が開幕しましたが、同時に Windows 8.1 Preview や Visual Studio 2013 Preview などが公開されています。 Windows 8.1 Preview – Microsoft Windows Visual Studio 2013 Preview Downloads | Microsoft Visual Studio というわけで、さっそく Windows 8.1 Preview を ICONIA W7 にインストールしましたので、ざっと触ってみた感じなどをレポート。 ダウンロードとインストール Windows 8、Windows 8 Pro、Windows RT、すべて 8.1 へアップデートできます。 ただし、いくつかの PC ではサポートされていない ようですので、ご注意ください。 上記のリンク

  • WPF で Visual Studio 2012 のような光るウィンドウを作る | grabacr.nét

    前回の続きになります。先にこちらも読んで頂ければと。 WPF で Zune のようなウィンドウを作る というか、前回「もうすぐ公開します」的な雰囲気出しておきながら 1 ヶ月放置というアレっぷり。。 はい、気を取り直して。 前回の投稿で Zune ライクなウィンドウを作りましたが、今回は Visual Studio 2012 です。 Zune、MetroTwitGitHub for Windows と Visual Studio 2012 の違いといえば、Visual Studio の方は端が光ってるんですよね。しかも状況に応じて色が変わる。左から、起動時、編集中、デバッグ中、非アクティブ時です。 かっこいいですね。ちなみに私は濃色テーマが好きです。 まず思いつく方法 真っ先に思いついたのは、WindowStyle=”None” と AllowsTransparency=”True” に

  • 1