.NET Framework

C#で構造体のunion(共用体)を扱う

C/C++にあるunionをC#で使用する方法は、ネットにいくつか解説しているサイトがあります。しかし、構造体がunionになったものは例があまりないため紹介したいと思います。 基本的に、StructLayout = "LayoutKind.Explicit"(明示的にレイアウトを指定する)…

C#でリトルエンディアンをビッグエンディアンに変換する

タイトルの通り変換をするための操作の紹介をしたいと思います。 まず、誤解を恐れずに言うと、ネットワークにデータを流すときは「ビッグエンディアン」形式、いつも使ってるPC上(のC#の内部表現)では「リトルエンディアン」形式が使われています。 更に…

WPFでボタンにホバーエフェクトをかける

WFPのボタンコントロールにホバーエフェクトをかけたいと思います。 マウスオーバーするとボタンの色が変わります。完成すると以下のようなイメージになります。GIFにすると画質悪い… XAML メイン画面のXAMLは以下の通りです。

VisualStudio 2017で.NET Framework4.7.1を利用可能にする

Visual Studio 2017に.NET4.7.1を追加する方法です。いつも、MSのWebサイトへ飛んで開発者キットをダウンロード → インストーラを起動し導入していましたが、今回は2017から新しく追加されているVS用のインストーラを使って追加する方法で導入したいと思いま…

WFPのListBoxでカードUIを作成する

WPFでListBoxを使ってカードUIを作成する方法です。 作成したものは以下のような外観になります。 リサイズすると横幅に合わせて列数が変わります。 よこに広げると以下のように並び変えられます。 カードの構造 XAMLを貼る前に構造はこんな感じになっていま…

Visual Studio 2017で単体テストもしくはTDDする

Visual Studio 2017でC#で開発してる開発者で、開発時にMSTestを使って単体テストを作成したり、コードを書くときにTDDしたりは、すっかり開発風景に定着していると思います。ただ、たまに作成方法を忘れるので、確認を兼ねてVisua Studio 2017 Community版…

C#とWPFで自力でチャート(グラフ)を描画する

WPFで数万点のデータを高速にグラフに表示しようとすると、たいていのチャートライブラリで何十秒も描画に時間がかかって使い物にならないことが多いので、簡単にデータを見たいときに使用する簡易チャートライブライを作成してみました。 線グラフっぽいも…

.NET と.NET Coreで定義ファイルを読む

.NETのアプリケーションにはアプリケーション設定ファイルから定義を読み取る機能が付いています。自作の定義フォーマットを作成せずとも定義が読み込めたりします。 そこで、.NET Framework と.NET Coreの両方から読み取ってみようと思います。 .NET Framew…

C#で行番号を取得する

C#で行番号を取得する方法です。2種類あってそれぞれ以下の通りです。 using System; using System.Diagnostics; using System.Runtime.CompilerServices; static void Main(string[] args) { GetLine_1(); GetLine_2(); } // C#4.0(VS2010)までの書き方 pub…

C# で JSON をシリアライズ、デシリアライズする

C#でJSON形式を外部ライブラリを使用しないでシリアライズ・デシリアライズする方法の紹介です。Json.NETは使用しません。 .NET Frameworkの標準ライブラリにあるDataContractJsonSerializer を使ってファイルやネットワークから読みとった JSON な文字列を …