八 四

コンピュータ

C#のWPFでメモ帳を作る

WPFのコードビハインドでアプリを作る基本形としてシンプルなメモ帳を作成しました。構成として、WindowにTextBoxを貼り付けただけです。メニューの処理は、System.Windows.Input.ApplicationCommand...
コンピュータ

Mutex と NamedPipe で アプリの二重起動を禁止しながらコマンドライン引数を渡す

メモ帳はなぜタブで開くのかエクスプローラーでテキストファイルをダブルクリックすると、メモ帳が起動し、そのファイルが開かれます。その状態のまま、エクスプローラーで別のテキストファイルをダブルクリックすると、新しいメモ帳は起動せず、既に起動して...
コンピュータ

WPFのDataTemplateに見るXAMLの特徴

WPFを触っていると、XAMLという言語の独特さを感じる場面がいくつかあります。その中でも典型的な部分は、ListViewとDataTemplateの関係です。一見すると、XAMLで書かれたUIは不自然に見えます。特に、HTML × Jav...
スポンサーリンク
コンピュータ

疑似3Dアニメーション効果「拡大・縮小機能を使った奥行き表現」

疑似3Dアニメーションにおいて、もっとも基本的で効果が高いのが拡大・縮小による奥行き表現です。これは実際にZ軸方向へ移動しているわけではなく、あくまで2D変形による視覚的な錯覚ですが、人間の知覚特性により十分に立体的に見せることができます。...
コンピュータ

WPFで作る「画像プレビュー機能付き・画像編集アプリランチャー」

エクスプローラーから、関連付けで起動し画像を確認、ペイントツールにつなげるツールです。想定ユースケース 画像をダブルクリック→ ImageLancher が起動→ まず画像を確認 「これ、どのツールで編集しよう?」→ コンテキストメニューか...
コンピュータ

自作PCの未来予想2026

当ブログは、もともと自作PCのパーツ購入記録として始めました。アフィリエイトリンクを扱う関係上、金額を前面に出す表現はあまり好ましくないのですが、過去記事を読み返してみると、数年という短い期間で価格が大きく変動していることに改めて気付かされ...
コンピュータ

WPFでエクスプローラーのカレントディレクトリを取得するツール

エクスプローラーで開いているディレクトリのパスを、ほかのアプリケーションでファイルを開く際のパスとして使いたい、という場面があります。プロセス間通信などの高度な仕組みを使わなくても、ディレクトリのパスをクリップボードにテキストとして渡すだけ...
コンピュータ

WPFでアプリ全体の例外を捕まえる方法

アプリケーションのコード内で個別に例外を処理するのが面倒なので、アプリケーション全体の例外を補足し処理する方法を調べてみました。ソースコードApp.xaml.csusing System.Diagnostics;using System.W...
コンピュータ

C#で作る最小DLLプラグイン構成

アプリの機能を拡張する方法として、プラグインという方法があります。Windowsの場合DLLファイルでプラグインを実現することが出来るので、試してみたいと思います。プロジェクトの作成手順作業ディレクトリの作成複数のプロジェクトをまとめたソリ...
コンピュータ

cloneしたGitHubリポジトリを切り離す方法とC#プロジェクト名の変更方法

GitHubのリポジトリで公開されているWPFテンプレートプロジェクトを、Clone → 自分用プロジェクトに変換する定番手順をまとめます。cloneするgit clone cd kareteruhitoリポジトリから切り離す.gitディレ...
コンピュータ

C# ファイル一覧を取得したい

ファイルの一覧はDirectory.EnumerateFilesメソッドで取得することが出来ます。サンプルコードvar dir = @"C:\Users\karet\Pictures";var files = Directory.Enume...
コンピュータ

改定新版Cプログラミング診断室を読んだ話

今回読み返したのは、改定新版Cプログラミング診断室。C言語の本ですが、「良いコードとは何か」「保守できるとはどういうことか」という観点では、C#を含む現代言語にもそのまま通用する話が多く含まれています。👉 Amazon アフィリエイトリンク...
コンピュータ

自作スプライトエディタで作ったJSONをCanvasで再生する最小サンプル

サンプルコードの概要何をするコードか 8×8スプライト × 4フレームのアニメーションを表示する最小サンプル スプライトデータは JSONをコードに直接貼り付け HTML5 Canvas + JavaScriptのみで動作 ゲームループ +...
コンピュータ

C#のWPFでファイルマネージャを作る:フォルダの作成、名前の変更対応

WPFでファイルマネージャを作成しています。今回はフォルダの作成、名前の変更機能を追加します。前回の記事GitHubリポジトリ(最新)ソースコード追加変更部分ファイル名RenameDialog.xaml.csusing System.Win...