WPF で フラットデザイン(メトロデザイン) っぽい ウィンドウ を作成しようとすると WindowChrome を利用することになります。
WindowChrome を使うときに発生する問題点とその対処方法をここではまとめます。
目次
問題点
対応策
[まとめ] サンプルコード
問題点
WindowChrome を利用して最大化したときの問題点は2点あります。
タスクバーの上に被ってしまう
ウィンドウを最大化するとタスクバー上まで被ってしまい、タスクバーの操作ができなくなってしまいます。
ストアアプリや全画面表示するゲームであれば良いでしょうが…、通常業務で使うアプリだと不便です。
ウィンドウ枠が画面外にはみ出る
ウィンドウを最大化すると画面領域外にウィンドウ枠がはみ出てしまい ...
ラベル WPF の投稿を表示しています。 すべての投稿を表示
WPF の Bootstrap っぽい テーマ
WPF の "Bootstrap" っぽい デザイン テーマ を作成しました。
コントロールだけ似せていては物足りなかったので、 メトロデザイン(フラットデザイン?)っぽい Window スタイル も作成しています。
※ まだ開発中なので足りない部分等あるかもしれません。その際はご意見いただけると嬉しいです。
Twining テーマ
ダウンロード
V0.0.2
DLLファイル - Twining.dll
ZIPファイル (ソース一式)
旧バージョン
GitHub - garafu / Twining : releases
外部リンク
GitHub - garafu/ ...
Akinari Tsugo
12:13
C#,
WPF
WPF で 依存プロパティ が 使える ユーザーコントロール の 作成方法
独自のユーザーコントロールを作成して利用する際、できることなら xaml 上のプロパティ(属性)に値を設定するだけで動くようにしたいと思い…
あれやこれやと実現する方法を調べたので、その結果をまとめておきます。
以下のサンプルでは GreetingMessageControl を作成します。
この ユーザーコントロール は 独自プロパティ として Locale があり、この プロパティ に ja や en を設定すると 挨拶 が表示されるコントロールです。
目次
ユーザーコントロールの作成
xaml
cs
ユーザーコントロールの利用
xaml
...
Akinari Tsugo
23:00
C#,
WPF
WPF で 共通リソースファイル(画像ファイル) を 作成/利用する 方法
WPF で 共通するリソース(特に画像) を 別DLL へ切り出して共有利用する方法についてまとめました。
画像ファイルはパス設定をうまくやらないとエラーとなって動かないので、ポイントについて触れながら作成手順を記載します。
サンプルとして名前付きの BitmapImage を作成します。
目次
リソースDLL の 作成
リソースDLL の 利用
おまけ
サンプルコード
GitHub / samplecode_ResidentApplication
ダウンロード
リソースDLL の 作成
ここではまず 共通で利用したい リソースDLL の作成を行います。
プロジェクトの作成は 「WPF カスタム コントロール ライブラリ」 を利用します。
空のプロジェクトからもできると思いますが…参照設定が面倒なので前述の「WPF カス ...
Akinari Tsugo
1:09
C#,
WPF
WPF で ボタン に 画像 を 使用する 方法
WPF で Button 要素に画像を利用するにはどうしたら良いかについて調べたのでまとめました。
いろいろなサンプルコードを参照しながら検証したのですが…マウスオーバーやマウスプレスを利用する場合に Style と Trigger を利用した xaml の記載が必要になります。
単純に画像だけでよければ Image を利用するだけで事足ります。
画像を使うので リソース でもいくつか問題が発生しましたが…
WPF の リソース に関しては 別記事 にします。。
目次
基本の画像ボタン
画像と文字列を含むボタン
マウスオーバーで画像変更するボタン
サンプルコード
GitHub / samplecode_ResidentApplication
ダウンロード
基本の画像ボタン
ボタン背景として文字列ではなく画像を利用するような入力 ...
Akinari Tsugo
23:14
C#,
WPF
C# WPF で タスクトレイ 常駐アプリ の 開発
C# の WPF を利用して、タスクトレイに常駐するアプリケーションのひな形を開発してみます。
チュートリアルに近い形で順を追って作成できるようにしてみました。
目次
概要
プロジェクト の 作成
常駐アプリ の 実装
アプリケーション名 の 変更
NotifyIcon クラス の ラッパー ひな型 (NotifyIconWrapper) 作成
アプリケーション の 起動処理 を 修正
NotifyIconWrapper クラス の 実装
常駐アプリ の 実行/テスト
サンプルコード
...
Akinari Tsugo
18:16
C#,
WPF
ASP.NET で web.config のファイルパスを取得する
あまり利用用途が思いつきませんが…
一応、メモ書きとして残しておきます。
タイトルは "ASP.NET" とありますが、実際は デスクトップアプリケーション (WPF, Windows Form アプリケーション) でも同じコードで app.config を取得できます。
アプリケーション構成ファイル (web.config や app.config) に独自の設定を追加したい場合、独自に実装する必要があります。
詳しくは こちら をご参照ください。
サンプルコード
System.AppDomain.CurrentDomain.SetupInformation.ConfigurationFile
Akinari Tsugo
22:52
ASP.NET,
C#,
WPF
WPF で PasswordBox に データバインド する方法
WPF の PasswordBox は セキュリティ上の問題から直接データバインドすることができません。
…が、セキュリティ上の問題を承知したうえで、それでもデータバインドしたい、簡便さを優先したい場合があると思います。
今回は、セキュリティ上の問題を承知したうえで、データバインドを実現する方法をまとめます。
目次
概要
PasswordBoxHelper クラス
XAML記述(使い方)
サンプルコード
ダウンロード
Akinari Tsugo
18:11
C#,
WPF
WPF の ListBox に対する リストデータ の バインディング と 表示名 の 制御
WPF で ListBox に リストデータ を表示する基本形をまとめます。
ここでは、カスタムデータ の リスト を ListBox の データソース として ItemsSource に与え、カスタムデータ の プロパティ を DisplayMemberPath に表示名として指定して利用する方法を載せます。
目次
ListBox に表示したい データ
ListBox に リストデータ を 表示する サンプルコード
Akinari Tsugo
23:51
C#,
WPF
WPF で DataContext を 設定 する 方法
WPF で DataContext を設定する方法はコード上でプロパティに設定する方法とXAML上で記載する方法と2種類あります。
ここではそれぞれについて、設定する方法を記載します。
Akinari Tsugo
22:07
C#,
WPF
WPF で INotifyPropertyChanged の実装 サンプル コード
INotifyPropertyChanged インターフェイス を実装したサンプルコードを掲載します。
(…どちらかと言うと、自分の覚書。。)
Akinari Tsugo
22:01
C#,
WPF
WPF で ICommand の実装 サンプル コード
ここでは ICommand インターフェイス を実装した カスタム コマンド のサンプルコードを掲載します。
汎用的に使える実装を委譲したコマンドになっています。
(…どちらかと言うと、自分の覚書。。)
Akinari Tsugo
21:01
C#,
WPF
WPF の コマンド 引数 を 設定 する 方法
基本は xaml で CommandParameter属性 を指定することで引数を渡せます。
以下ではいくつかの サンプルコード を記載しました。
目次
固定値 を 渡す 例
要素 を 渡す 例
コントロールを渡す例
Windowを渡す例
要素 の プロパティ を 渡す 例
Akinari Tsugo
21:00
C#,
WPF
WPF の コマンド 概要
WPF で利用される Command(コマンド) に関して簡単なまとめを記載します。
コマンドは操作を分離したもので、関連するオブジェクトに コマンド ソース、コマンド および コマンド と 実装 を結びつける コマンド バインディング があります。
(他にもありますが…ここでは割愛します。。)
以下ではこれらを簡単に紹介します。
目次
コマンド ソース
コマンド
コマンド バインディング
Akinari Tsugo
20:59
C#,
WPF
簡単な WPF アプリケーション サンプル
.imgfrm {
border: none;
}
.imgfrm th, .imgfrm td {
border-collapse: collapse;
border: none;
text-align: center;
vertical-align: center;
}
ちまたにいくらでもありますが… WPF の 簡単な サンプルアプリケーション を作成します。
最も単純化された アプリケーション なので、実用に耐えられるものではないと思いますが、基本を押さえるには参考になると思います。
目次
概要
プロジェクトの修正
Model の作成
Command の作成
ViewModel の作成
View の修正
最終的にできあがったプロジェクト
サンプルコード
ダウンロード
Akinari Tsugo
20:57
C#,
WPF
WPF アプリケーション で Elysium の 使い方
WPF アプリケーション の開発において Elysium を利用すると、ストアアプリ のような画面 (Github for windows のような画面) が簡単に作成できます。
見た目を簡単にフラットデザインぽくできるので、便利なプラグイン? ライブラリ? だと思います。
ここでは、その 実装手順 の 簡単な チュートリアル を記載します。
実行サンプル
Elysium を使って実装した WPF アプリケーション の実行画面は次のようなものになります。
Akinari Tsugo
18:18
C#,
WPF