タグ

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

  • ItemsControl 攻略 ~ 外観のカスタマイズ | grabacr.nét

    これは、XAML Advent Calendar 2013 の 1 日目のエントリーです。 WPF (または Windows ストア アプリ) におけるコレクション コントロール (ItemsControl) の外観をカスタマイズするための基礎として、4 つのプロパティの使いどころを紹介します。 前置き WPF でアプリ開発をしていると、そのデザイン性の高さを生かし、WPF っぽい (?) UI のアプリを開発したくなりませんか? なりますよね! 既定のデザインで開発しても、データ バインディング等々の恩恵を多分に受けられるので十分素晴らしいのですが、「その UI だったら WindowsForms で作れるじゃん」なんて思ってしまったり。 なので、私が WPF アプリを開発するときは、最近の Visual Studio や Zune、GitHub for Windows などに見られるモ

    ItemsControl 攻略 ~ 外観のカスタマイズ | grabacr.nét
  • 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
  • クラシック デスクトップ アプリの Windows テーマ追従 | grabacr.nét

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

    クラシック デスクトップ アプリの Windows テーマ追従 | grabacr.nét
    shigiryou
    shigiryou 2016/04/28
  • 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
  • アクティブなウィンドウを別な仮想デスクトップに飛ばすアプリ | grabacr.nét

    先日のエントリー「Windows 10 の仮想デスクトップを制御しようとして失敗した話」で アプリ (C# コード) から仮想デスクトップの作成、削除、移動はできた 同一プロセス内のウィンドウを、任意の仮想デスクトップに移動させることはできた 他プロセスのウィンドウは、他の仮想デスクトップに移動させることはできなかった の 3 つめの影響により「グローバル キーフックを使って現在アクティブなウィンドウを別な仮想デスクトップに飛ばすアプリ」が頓挫していた話をしました。 が、@tmyt の協力で完成しました。 どうやって回避したか (といっても、別に Windows 10 や IVirtualDesktopManager 固有の話ではなく、昔からあるネイティブなテクニック) の話は @tmyt のブログを待つとして 解説頂きました、せっかくなので完成したアプリの紹介をします。 SylphyHo

    アクティブなウィンドウを別な仮想デスクトップに飛ばすアプリ | grabacr.nét
    shigiryou
    shigiryou 2015/09/14
  • ウィンドウの枠を簡単に光らせるライブラリを公開しました | grabacr.nét

    MetroRadiance という名前のライブラリを NuGet で公開したのですが、Visual Studio や Office のようにウィンドウの枠を簡単に光らせることができる機能が話題を呼んでいます (呼んでいません)。 要するに、KanColleViewer や私の自作アプリで使っている、UI ライブラリです。 自身のアプリのブランド化のために自作した Theme を使っているのですが、せっかくなので公開しました。 このエントリーでは、簡単なチュートリアルとして、Visual Studio のようにウィンドウの枠を光らせるところまでを解説します。 ウィンドウの枠を消す ここで言う「ウィンドウの枠」とは、Windows 側で描画・管理される非クライアント領域 (ウィンドウ クロームと呼ばれる部分) のことです。 Visual Studio や Office のようなウィンドウを作る

    ウィンドウの枠を簡単に光らせるライブラリを公開しました | grabacr.nét
  • バックグラウンド スレッドで UI 要素を作るとメモリリークする (WPF) | grabacr.nét

    題記の通りなのですが、一時ハマったので共有します。 正確には、「バックグラウンド スレッドで DispatcherObject を作るとメモリリークする」ですね。 例えば、バックグラウンドで画像をダウンロードして加工したり。 もしくは Grid や TextBlock といった UI 要素を使って、サムネイルやら何やらの画像を生成したいときとか。 ImageSource は Freezable なので、バックグラウンドで画像を作って Freeze() してしまえば、UI スレッドに渡してもだいじょうぶ。 なるべく UI スレッドの負担を減らしたいのです。 ということで、以下のようなコードを書いてみます。 サンプルなので Console アプリですが、PresentationCore, PresentationFramework, WindowsBase, System.Xaml あたりを参

    バックグラウンド スレッドで UI 要素を作るとメモリリークする (WPF) | grabacr.nét
    shigiryou
    shigiryou 2014/06/03
  • grabacr.nét | PaaS (Patchouli as a Shachiku)

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

  • 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” に

  • WPF での高 DPI 対応 | grabacr.nét

    Home » Development » Visual Studio 2012 のような光るウィンドウを作る (再)、そして WPF での高 DPI 対応 以前、Zune ライクなウィンドウを作成する 投稿と Visual Studio 2012 のような光るウィンドウを作成する 投稿をしましたが、その内容のアップデートになります。先にこれらの記事を読んで頂けると嬉しいです。 今回は、主に WPF における DPI 対応のお話です (あまり需要がない)。 そもそも DPI って何ぞ? という方は、先日の勉強会の資料 もお読み頂けるといいかも。 何が足りなかった? 以前の投稿で足りていなかったもの、それはズバリ、高 DPI 対応です。 その他、GitHub 上で公開しているコードでは、スクリーン座標がマイナス値になったときに正しく表示されない不具合などもあったり。 ついでに、コードの見た目が

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

    Visual Studio 2012 にも慣れてきた今日この頃。 Windows Azure や Windows Store apps の開発が流行る中、デスクトップ WPF アプリケーション開発を貫く私かっこいい!かっこわるい。仕事だから仕方ない。 ということで、デスクトップの WPF ネタを 1 つ。 最近、Zune Software にはじまり、MetroTwitGitHub for Windows、そして Visual Studio 2012 など、従来の Windows のウィンドウっぽくないかっこいいウィンドウのアプリケーションがいくつも出ています (上: Zune Software / 下: Visual Studio 2012)。 (こういうウィンドウの総称ってあるんでしょうか? 「Metro ライク」などという表記は見かけますが、正式名称っぽいものを私は聞いたことが

    shigiryou
    shigiryou 2014/02/02
    ]Dark][cool][excellent]
  • デスクトップ アプリのタイルをカスタマイズする | grabacr.nét

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

    デスクトップ アプリのタイルをカスタマイズする | grabacr.nét
  • XAML Advent Calendar 2013 完走! | grabacr.nét

    僭越ながら私が主催させて頂いた XAML Advent Calendar 2013 は、12/25 分の投稿をもって無事完走しました。 師走という多忙な時期にありながら、某悪意しか感じられない記事で「あうとー」の烙印を押されることなく、完璧に走り抜けました。 参加し、記事を投稿して下さった皆さま、そして盛り上げてくださった皆さま、当にありがとうございました。 IT 技術界隈における Advent Calendar とは、12/1 ~ 12/25 までの 25 日間に、延べ 25 人が 1 日ずつ交代で、決められたテーマに基づき自分のブログ等に記事を書くというオンラインイベントです。 gihyo.jp さんの記事で、今年開催された Advent Calendar の一覧を見られます。 私が XAML Advent Calendar 2013 を立ち上げた理由はただ一つ、「いろいろな人の X

    shigiryou
    shigiryou 2013/12/26
  • Windows 8.1 で加わった Per-Monitor DPI と WPF での対応方法 | grabacr.nét

    先日の めとべや東京勉強会 #2 にて WPF での Per-Monitor DPI 対応アプリのデモをしましたが、アプリが完成したので公開します。 XamClaudia https://github.com/Grabacr07/XamClaudia 間もなく Windows 8.1 公開ですね! ということで、Windows 8.1 の新機能である Per-Monitor DPI の解説と対応方法の紹介をします。 High DPI と WPF 昨今のタブレット PC などは、体の小型化と同時にモニターの高精細化が進んでおり、1 ドットの物理的なサイズがどんどん小さくなっています。たとえば、Surface Pro (10.6”, Full-HD) の 1 ドットのサイズは約 0.12 mm です。 そのため、Windows の High DPI 設定が既定で 125 % や 150 %

  • XAML でクラウディアさんを描いてみました | grabacr.nét

    なにやらタイトルだけで既に出オチ感が。。。 もちろん、これら素晴らしい記事に触発されて書きました。 PowerPoint でクラウディアさんを書いてみました | SE の雑記 PowerPoint でクラウディアさんを私も描いてみました PowerPointで初めてのお絵かきしてみた 実は、以前から私の Twitter アイコンも PowerPoint で作っていたりしたのですが。 前にも言いましたが、このアイコンは Microsoft PowerPoint で作っているので、配色パターンを弄ればキャラの差し替えができる twitpic.com/947pw3 — ぐらばくさん (@Grabacr07) 2012年4月1日 こう表示すると確かに狂気を感じる twitter.com/Grabacr07/stat… — ぐらばくさん (@Grabacr07) 2013年3月27日 最近の Pow

  • 1