WPF

コンピュータ

C#のWPFでドライブの一覧とカレントディレクトリの階層を選択するコンボボックスを作る。

カレントディレクトリを変更するために、コンボボックスを使ってドライブの一覧を選択するUIがあります。 また、ドライブだけではなくカレントディレクトリとその上位階層も選択するようになっていると便利です。 実際作れるか挑戦してみました。 以下7...
コンピュータ

C#でWPF学習中「WPFプロジェクトを作成するスクリプト3」

前回にクラスライブラリとコンソールプロジェクトを使えるようにしましたが、今回はシンプルにWPFのアプリケーションを作成するプロジェクトを作成します。 WPFプロジェクトを作成しMicrosoft.Xaml.Behaviors.WpfとRea...
コンピュータ

C#でConsoleプロジェクトからWPFを扱う

WPFに依存するオブジェクトやライブラリをConsoleプロジェクトから呼び出したい。 以前WPFのクラスライブラリを作成しConsoleプロジェクトから参照する方法を試しました。 consoleプロジェクトのcsprojファイル内でTar...
コンピュータ

C#でWPF学習中「WPFプロジェクトを作成するスクリプト2」

WPFのクラスライブラリを作成し、WPFアプリケーションのプロジェクトとConsoleアプリケーションのプロジェクトから参照するソリューションを作成するスクリプトを作成しました。 スクリプト スクリプト名:Create-WPFSolutio...
コンピュータ

WPFで動的にコントロールを作成配置するサンプル

WPFでは基本的にXAMLであらかじめViewを静的に定義するわけですが、winformsぽく動的にコントロールを作成する方法を調べてみました。 プロジェクトが作成された状態のxamlファイルのGridに名前"Grid1"をつけます。 <W...
コンピュータ

WPFのバインディングで結合方式の種類

Modeプロパティにセットする値 TwoWay ViewModelとViewを相互に同期 OneWay ViewModel側のプロパティが変更されるとバインディングされたView側が更新。逆は更新されない。 OneTime 初回のみ更新
コンピュータ

「WPF」画像ファイルをグレースケールへ変換

プロジェクトの作成 ソースコード ファイル名:WPFLibA\Class1.cs using System; using System.IO; using System.Windows.Media; using System.Windows...
コンピュータ

「WPF」BitmapSourceのdpiを変更する。

WPFで画像ファイルを読み込んで表示させる際、画像が変形して表示されることがありました。 原因は調べていませんが画像のdpiを固定してあげると解決するようなのでdpiを変換するメソッドを作成してみます。 public static Syst...
コンピュータ

「WPF」BitmapSourceのPixelFormatを変更する。

画像を加工する場合様々なPixelFormat対応するのは骨が折れるので指定のPixelFormatに変換してしまいます。 加工がしやすそうなPixelFormats.Bgra32へ変換するメソッドを作成してみました。 public sta...
コンピュータ

WPFのライブラリをConsoleプロジェクトから呼び出す

WPFのBitmapImageオブジェクトを使って画像ファイルの加工するプログラムを作りたいのですが、バッチ処理をする場合GUIは必要ないのでコンソールアプリとして作成したい。 WinFomrsなどで使われるBitmapオブジェクトの場合C...
コンピュータ

C#のWPF(XAML)で2つの画像を左右に分割表示する

XAMLで画像を分割表示してみます。 <Window x:Class="ImageSplitterWPF.MainWindow" xmlns=" xmlns:x=" xmlns:d=" xmlns:mc=" xmlns:local="clr...
コンピュータ

【WPF学習中】Bitmapにピクセル単位で描画3「塗りつぶし2」

塗りつぶしのサンプルプログラムを作ってみましたが、検査済み座標を記憶するためDictionary<T>を使っていましたが、シンプルに座標に対応した2次元配列にした方が高速化するのではと思い、作りなおしてみました。 プロジェクトの作成 Pow...
コンピュータ

【WPF学習中】Bitmapにピクセル単位で描画4「円を描画」

円を描画するアルゴリズムを探していたらC言語でソースコードを公開されてるページを見つけました。 C#で書きなおしたサンプルになります。 プロジェクトの作成 PowerShellで実行。要dotnet.exe mkdir SampleCirc...
コンピュータ

【WPF学習中】Bitmapにピクセル単位で描画3「塗りつぶし」

指定した座標の色を取得し、その座標の左右上下の座標の色と比較し同じであれば、塗りつぶし座標の配列にスタックします。 その後、配列にスタックした座標を指定色でセットします。 プロジェクトの作成 PowerShellで実行。要dotnet.ex...