.NET TIPS

Insider.NET読者にピンポイントで役立つプログラミングテクニックとヒント集です。

.NET TIPS:

プログラム実行時に確保したリソースは忘れずに解放する必要がある。usingステートメント/Disposeパターンを使って、これを確実に行う方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

生成するたびに、その値が異なるような乱数を得る方法の中から、ダステンフェルドのアルゴリズムを使った方法と、もっと簡単だが速度面では不利な方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

DateTime/DateTimeOffset構造体やStringクラスを使用して、指定した日が何曜日かを知る方法を解説。また、六曜の取得方法についても取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

エスケープ文字を使って、文字列中に改行文字などの特殊文字や変数の値などを埋め込む方法を、C#/Visual Basic/XAMLごとに説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Visual Studioの[オプション]ダイアログを使い、文字色や配色テーマなどを変更/エクスポートする方法と、Color Theme Editorで独自の配色テーマを作成する方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Json.NETを使ってさまざまな形でJSONデータのシリアライズ/デシリアライズを行う方法を説明する。また、.NET Frameworkのみでこれを行う方法も取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

AESアルゴリズムの.NET実装であるAesManagedクラスを利用して、文字列(やファイル)を対象に暗号化/復号を行う方法を取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Visual Studio 2017の[ウォッチ]ウィンドウを使うと、プログラムのデバッグ中に特定の変数の値を監視し続けたり、任意の式を評価して表示したりできる。

【かわさきしんじ , Insider.NET編集部】()
.NET TIPS:

Caller Infoと呼ばれる属性を使って、メソッド呼び出し時に、それを呼び出した側のコードのソースファイル名/行番号/メソッド名といった情報を取得する方法を説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Parallelクラスを使って、複数の処理を並列に実行する方法を解説する。また、PLINQを使ったコード例や例外処理を行う上での注意点なども取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

名前付き引数を使用すると、メソッド呼び出し時に順不同で特定の引数だけを指定できる。多数のオプション引数を持つメソッドを呼び出す場合には、とりわけ役に立つ。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

メソッド呼び出し時に引数を省略できるようにするには、その引数をオプション引数とするか、メソッドをオーバーロードする。それらの方法と注意点を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

プレミアムフライデーを求めるには、月末の日付からさかのぼりながら金曜日を探す方法と、月末の日付が何曜日か調べて、それと金曜日との日数差から求める方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

配列やオブジェクトを複製する際にディープコピーを行うには、BinaryFormatterクラスやサードパーティー製のシリアライザーを使用してシリアライズ/デシリアライズするとよい。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

ArrayクラスのCloneメソッドを使い、配列をコピー(シャローコピー)する方法を説明する。また、拡張メソッドを使いキャストを抑制する方法も取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

ArrayクラスのCopyメソッド、ArraySegmentクラスなどを使い、配列の一部の要素だけをコピーする方法を説明。また、2つの配列をマージする方法も紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

配列をコピーするには、for/foreachループを使う方法もあるが、ArrayクラスのCopyメソッドを使うのが一番簡単で速度の面でも有利である。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

XmlSerializerクラスでシリアライズ/デシリアライズを行うと、デシリアライズに失敗することがある。その回避策を含め、XmlSerializerクラスの使い方を説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

キャストにより整数を列挙体値へ変換する方法と、EnumクラスのTryParse/Parse/IsDefinedメソッドにより文字列を列挙体値へ変換する方法を説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

列挙体の値を文字列に変換するには、ToStringメソッドを使うのが簡単だが、任意の文字列に変換するには変換テーブルを使用する。また、処理を拡張メソッドに切り分けてもよい。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Listから重複した要素を削除するには、Distinctメソッドを使う他、IEqualityComparer<T>を使用する、Equalsメソッドをオーバーライドするなどの方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

LINQのOrderBy/ThenByなどの拡張メソッドとList<T>クラスのSortメソッドを利用して、Listの要素を並べ替える方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

List<T>クラスのメソッドあるいはLINQ拡張メソッドを利用して、条件に合致する要素をリストから検索する方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

ディスク容量の節約や「旧バージョンはもう使わない」などの理由で、古いバージョンのVisual Studioを完全にアンインストールしたい場合がある。これをできるだけ手間なく実施する方法を紹介する。

【一色政彦 , Build Insider編集長】()
.NET TIPS:

コレクションの要素を処理するには、foreach/For Eachループ、ForEachメソッド、LINQの拡張メソッドを使用する方法がある。これらの使い方を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

List<T>オブジェクト作成時にList<T>コレクションに要素を追加する方法や、Add/AddRangeメソッドやInsert/InsertRangeメソッドを使いList<T>コレクションに要素を追加する方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

LINQのSelect拡張メソッドを使用して、foreachループの中で現在が何回目の繰り返しなのか、そのインデックスを得る方法を紹介する(C# 7/VB 15対応)。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

RegexクラスのSplitメソッドを使用して、正規表現にマッチする部分をセパレーターとして、文字列を分割する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

RegexクラスのReplaceメソッドで、正規表現にマッチする部分を置換したり削除したりする方法を解説。また、高度な正規表現の使い方も取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

RegexクラスのMatchesメソッドを使い、ある文字列に含まれている特定のパターンを抽出する方法と、マッチする範囲を限定していく方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

RegexクラスのIsMatch静的メソッドで、ある文字列が何らかのパターンにマッチするかを調べるための基本を取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

「コレクションを作成して、それにいちいち要素を追加して」というのは面倒だ。そうではなく、コレクションの作成と同時にその要素を追加する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

例外の処理時には何らかの理由で、キャッチした例外をリスローしなければならないときがある。C#やVBでこれを適切に行う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

ScrollViewコントロールを使うことで、画面サイズには収まりきらないUI要素をスクロールして表示する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsで、RelativeLayoutコントロールと各種のプロパティを使用して、画面のサイズなどに相対的にコントロールを配置する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsのGridコントロールのRowDefinitions/ColumnDefinitionsプロパティを用いて、画面をどう分割するかを指定する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリでは、テキスト入力用のコントロールとしてEntry/Editor/SearchBarの3種類を利用できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsではTabbedPageコントロールを使用することで、画面内のタブ操作によって表示するページを切り替えることができる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsではCarouselPageコントロールを使用することで、スワイプ操作によって画面上のページをスライドさせながら切り替えられる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

システムやデバイスが提供する[戻る]ボタンが押されたときに、前画面にきちんと遷移するようにするにはOnBackButtonPressedメソッドを使用する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリでページ遷移を行うには幾つかの方法がある。中でも、NavigationPageクラスでは履歴管理などが自動で行われるためおすすめだ。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリでは、ユーザーデータを保存する場所はプラットフォームごとに異なる。PCL Storageライブラリを使うとこれを透過的に扱えるようになる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

プラットフォームに固有の処理を記述するには、DependencyServiceクラスを利用して、PCLでインタフェースを、個々のプロジェクトでその実装を定義するとよい。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリに埋め込まれた画像リソースを表示するには、ImageSourceクラスのFromResource/FromStreamメソッドが使える。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsでは、ImageコントロールのSourceプロパティにパスを指定することで、その画像ファイルを表示できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsアプリではImageコントロールのSourceプロパティを使用することで、URLを指定して画像を表示できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリでは、StackLayout/Gridコントロールとそれらのプロパティを使うことで、とても簡単にコントロールを等間隔に配置できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsアプリで表示している文字列中で色やスタイルを変更するには、LabelコントロールのFormattedTextプロパティを使用するとよい。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.Formsでは、プラットフォームごとに異なる改行文字列を統一的に扱うためにEnvironment.NewLineプロパティを利用できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsではNamedSize列挙型やGetNamedSizeメソッドを使用することで、プラットフォームごとに画面表示に使われるフォントのサイズを変更できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormsアプリでXAMLあるいはコードビハインドに、プラットフォームごとに異なる設定を簡便に記述するにはOnPlatformクラス/メソッドを使用する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Xamarin.FormアプリではXAMLを使用して、画面に表示するページを記述できる。そのページをプロジェクトに追加する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C# 6/VBでは例外処理時に、catch句にwhen句を付加して、例外をキャッチする条件を指定する方法を解説。また、その応用例も紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JSON.parse/JSON.stringifyメソッドやjQueryのparseJSON/getJSONメソッドなどを使って、JSONデータのシリアライズ/デシリアライズを行う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C# 6で追加されたnameof演算子を使うことで、クラス名/変数名/プロパティ名などを安全に文字列化できる。名前にまつわるバグを減らしてくれるうれしい機能だ。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

GETパラメーターの内容をJavaScriptを使いブラウザ内で解析する方法と、JavaScriptの新機能である「URLSearchParamsオブジェクト」で解析する方法を紹介

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C# 6で追加されたNull条件演算子(?./?[演算子)を使うと、これまではif文などで行っていた「nullチェック+何らかの処理」を簡潔に記述できるようになる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptファイルに別ファイルの内容を取り込むには、jQueryのajaxメソッドを利用できる。ECMAScript 2015のmoduleを使った例も紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C# 6.0では「using static」で特定のクラスを指定することで、そのクラスの静的メソッドなどをクラス名を書かずにそのまま使用できるようになる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

HTML中のドロップダウンで選択されている要素は、jQueryのchildren/findメソッドや各種の子セレクタを組み合わせることで簡単に取得できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C# 6.0/7.0では、ラムダ式を使ってメソッドやプロパティを簡潔に記述できる。短くて読みやすいコードを記述するにはうってつけの方法だ。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptではdefinePropertyメソッドによって、オブジェクトのプロパティを定義し、その属性を細やかに制御できる。

【かわさきしんじ , Insider.NET編集部】()
.NET TIPS:

JavaScriptでプロパティを定義するには、通常の構文に加えて、get/set構文を使う方法と、definePropertyメソッドを使う方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptで関数を定義するには、関数宣言による方法と関数式による方法がある。本稿ではこれらの違いについて説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptで非同期通信を行うには、jQueryのajaxメソッド/getJSONメソッドなどを使用するとよい。通信完了時の処理はメソッドチェーンを使って記述できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptでチェックボックスの値を読み書きするには、jQueryのprop/click/valメソッド、属性等価セレクタ、:checkedセレクタを利用するとよい。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptを使って画面遷移を行うには、locationインタフェースのhrefプロパティ/assignメソッド/replaceメソッドが使える。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptでDOMの子要素や子孫要素を操作するには、jQueryのfind/childrenメソッドとCSSの子セレクタ/子孫セレクタを使用する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptでjQueryを使用して、UI要素の表示/非表示状態を判別するには、display/visibility/opacityプロパティやフィルターを使用できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

リンクをクリックするだけでファイルをダウンロードできるようにするには、HTML5のdownload属性を使う方法とJavaScriptコードを使う方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptでエンドユーザーの言語を取得するには、navigator.languageプロパティやnavigator.userLanguageプロパティなどを使用する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

堅牢なJavaScriptコードを書く上でstrictモードはぜひ使いたい機能だが、落とし穴もある。本稿ではstrictモードの使い方と注意点を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptで、文字列中に他の文字列が含まれているかを調べるにはindexOfメソッドを使用するなど幾つかの方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

JavaScriptで文字列と数値、Booleanと数値、nullとundefinedなど、異なるデータ型の値を比較するには==演算子を使う方法と===演算子を使う方法がある。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

C#とVBで、クラスや構造体のインスタンスを作成するときに同時にそのプロパティやフィールドの値を初期化する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリなどではコントロールのエッジがきれいに描画されないことがある。.NET 4で導入されたプロパティを使い、これを修正する方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

.NET 4以降のWPF/UWPアプリで、RunコントロールのTextプロパティを使い、テキストの一部の内容だけをユーザーの入力に応じて変更する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

バリューコンバータを使って、ラジオボタン(UI)とロジックの間で双方向データバインディングを行う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリで双方向データバインディングを使用して、ラジオボタンの選択状態を反映する方法、その問題点と解決策を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリ/UWPアプリで、コードビハインドからラジオボタンの選択状態を変更する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Linq-to-XAMLライブラリを使うと、WPFアプリ/UWPアプリのUIコントロールを列挙できる。これを使って無名のコントロールにアクセスする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

Grid/Canvas/Ellipse/Borderなどのコントロールでマウス/タッチ/スタイラスのイベントを発生させ、それを処理する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

例外を1カ所でまとめて処理したくなることがよくある。これを行う四つの方法を本稿では紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

タスク並列ライブラリとasync/await機構を使って、バックグラウンド処理を簡潔に記述する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリの多重起動を禁止する方法にはいくつかある。本稿ではシステムにグローバルなセマフォを利用してこれを行う方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリのMainメソッドは通常、自動生成される。本稿では、Mainメソッドの自動生成をやめ、独自の処理を行うように書き換える方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

WPFアプリでは、.NET Framework 4.6でサポートされた新機能を使うことで、子ウィンドウを透明にできる。本稿ではその方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Development】()
.NET TIPS:

本稿では、WPFアプリでウィンドウ全体を透明にして表示する方法と、そのときに注意すべき事項を取り上げる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

本稿では、Windowsフォームアプリ/WPFアプリをWindows 8.1のスタート画面に登録したときに、そのタイル表示をカスタマイズする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

タスクバーのアイコンに表示されるジャンプリストはアプリの使い勝手を向上させてくれる。本稿では、プログラムからジャンプリストを操作する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

WindowsフォームとWPFアプリではタスクバーのアイコンに処理の進捗状況を表示することがよくある。本稿ではこの機能を実装する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Visual Studio 2015の新機能「ライブビジュアルツリー」と「ライブプロパティエクスプローラー」を使い、UIコントロールのプロパティをデバッグ実行時に変更する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

国民の祝日には、日付が決まっているものもあれば、その年によって変化するものもある。本稿では法律に従って、これらを算出する方法を示す。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

TimeZoneInfoクラスを利用して、Windowsが保持しているタイムゾーン情報を取得し、そこから時差を求める方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

.NET Frameworkが提供する二つの日付操作用クラス、DateTimeとDateTimeOffsetの違いとそれらの使い分け方を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

日本では日付を年号やその略称を使って表示したいことがよくある。本稿では、年号やその略称を用いて日付を表示する方法をいくつか紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

ある日が含まれる月の最初と最後の日付を求める処理と、それをライブラリ化して拡張メソッドの形で再利用できるようにする方法を説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Windowsにはコンパイラーに加えてビルドツールも標準で含まれている。本稿ではこのビルドツールを使って、Visual Studioのプロジェクトをビルドする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Vista以降のWindows OSには標準でC#/Visual Basicのコンパイラーが付属する。本稿では、これらを使い、ソースコードをコンパイルする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Visual StudioのIDE内で、サードパーティ製のユニットテストフレームワーク「NUnit」によるユニットテストを実行する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

データの転送元と転送先のプロパティ名に一定の変換ルールがある場合に、AutoMapperによりデータコピーを自動化する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

AutoMapperを使って、名前の異なるプロパティ/型が異なるプロパティなどの間でのデータコピーを自動化する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

オープンソースのライブラリ「AutoMapper」を使い、オブジェクト間でのデータのコピーという煩雑な処理を数行で実現する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

[定義をここに表示]コマンドを使って、その場で別の場所や別ファイルにあるソースコードを参照したり編集したりする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

空白文字が半角スペースなのか、全角スペースなのか、タブ文字なのかを一目で認識するのは難しい。Visual Studioでこれを識別するための記号を表示する方法を紹介する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Visual Studio 2013のテキストエディターでは、スクロールバーにさまざまな種類の情報を表示できる。本稿では、その活用方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Visual StudioのIDEで使われる表示言語を、日本語以外から日本語に(あるいはその逆に)切り替える方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

複数台のPCで設定を共有するのに便利なVisual Studio 2013のConnected IDE。本稿ではIDEの右上に表示されるユーザー名とアイコンを変更する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

.NET Framework 4.5以降で提供されているZipArchiveクラスなどを使用して、ZIP形式のアーカイブファイルを手軽に扱う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Html Agility Pack/XPath/LINQを組み合わせて、Webページから特定の情報を簡潔な形で抜き出す方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Webページの取得を例に、MITライセンス準拠のドネーションウェア「ReadJEnc」を使用して、文字エンコーディングを推定する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

HttpClientクラスを使ってWebページを取得する際に、文字化けが発生しないよう、Webページのエンコーディングを推測/設定して取得する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

.NET Framework 4.5で新設されたHttpClientクラスを使い、Webページの内容を非常にシンプルなコードで取得する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

LINQを使用して複数の比較条件をAND検索する際に、独自のWhereメソッドを作成することでコードの可読性を高める方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

LINQを使って文字列コレクションでOR検索を行うには、いくつかの方法がある。本稿ではそれらの方法を示しながら、長所短所について検討する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

LINQでWhereメソッドをチェーンさせることで、文字列コレクションに対するAND検索を実現する方法を解説。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

LINQを使って文字列のコレクションを処理するときに、SQLのLIKE演算子のような「LIKE検索」を実現する方法を説明する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

LINQを使って、文字列における特定文字の出現回数をカウントする方法を解説する。LINQを使うと、何をしたいのかを簡潔に記述できる。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

lock/SyncLockステートメントの代わりにAsyncLockクラスを使用して、await/Await演算子を含むコードで排他ロックを行う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

lock/SyncLockステートメントの代わりにSemaphoreSlimクラスを使い、await/Await演算子を含むコードで排他ロックを行う方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

BindingOperations.EnableCollectionSynchronizationメソッドを使い、データバインドによりUI要素と結び付いているデータを別スレッドから更新する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

WPFアプリで、DataGridコントロールやListViewコントロールにソートして表示されているデータが修正されたときに、再ソートしてデータが正しい順序で表示されるようにする方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

WPFアプリでDataGridコントロールやListViewコントロールに表示されるデータを、プログラムコードの側からソートして表示する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

Windowsエクスプローラーなど、Windowsに付属する純正アプリでも最近ではリボンを使用したものをよく目にするようになった。本稿では、リボンを持ったWPFアプリを構築する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

WPFアプリにおいて、SelectionBrushプロパティを使いテキストボックスやリッチテキストボックスの選択範囲の背景色を変更する方法を解説する。

【山本康彦 , BluewaterSoft/Microsoft MVP for Windows Platform Development】()
.NET TIPS:

WPFアプリにおいて、CaretBrushプロパティを使いテキストボックスやリッチテキストボックスのカーソル色(キャレット色)を変更する方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

LINQは便利だが、使い方を間違えると大量のメモリを消費してしまう場合がある。本稿では、LINQを使用する場合に消費するメモリ量を抑制する方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

複雑な構造を持つオブジェクトがコレクションに格納されている場合に、LINQのSelect/Sum拡張メソッドを使って、特定のプロパティを集計の対象とする方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

LINQのMin/Max拡張メソッドを使って、簡潔なコードで数値のコレクションの中から最小値/最大値を検索する方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

Where拡張メソッドを使って、数値コレクションの要素の中で、特定の条件を満たす値だけを集計する方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

コレクションに格納されている数値を集計するにはループを記述するのが一般的だ。しかし、LINQを使うことで、メソッドを1つ呼び出すだけで集計できる。本稿ではこの方法を解説する。

【山本康彦(http://www.bluewatersoft.jp/) , BluewaterSoft】()
.NET TIPS:

タスクバーから、あるいはソリューションファイルをダブルクリックしたときに、常に管理者権限でVisual Studio 2013を起動する方法を解説する。

【かわさきしんじ Insider.NET編集部 , 共著】()
.NET TIPS:

Visual Studio 2013の初回起動時に指定可能な開発設定と配色パターンを、次回以降の起動後で変更する方法を解説する。

【かわさきしんじ Insider.NET編集部 , 共著】()
.NET TIPS:

本稿では、Windowsフォーム上でChartコントロールを使用するための基本的な手順を紹介する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

数値を0埋めで文字列にするだけなら、StringクラスのFormatメソッドより、整数型が持つToStringメソッドの方がシンプルに行える。C#およびVBでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

foreach文でリスト内の要素を列挙中に、いずれかの要素を削除しようとすると例外が発生して失敗する。そんな場合は、for文やRemoveAllメソッドを応用する。C#およびVBでの使い方や注意点を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【岸本真二郎 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【岸本真二郎 , デジタルアドバンテージ】()
.NET TIPS:

.NET Frameworkで他のプロセスがオープン中のファイルを読み書きするには、FileStreamクラスで詳細なパラメータ設定を指定する必要がある。C#およびVBでの使い方を解説する。

【岸本真二郎 , デジタルアドバンテージ】()
.NET TIPS:

数値の小数点以下の端数を切り捨てるにはMathクラス(System名前空間)の静的メソッドFloorを使う。切り上げるには静的メソッドCeilingを使う。C#およびVBでの使い方を解説する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

.NET FrameworkのStringクラスには、文字列から特定の文字列を取り除くためのメソッドは用意されておらず、本来は文字列を置換するReplaceメソッドで代用するのが一般的だ。C#およびVBでの使い方を解説する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

バイナリ・ファイルを読み書きする際、単純にファイル全体をbyte配列に読み込んだり、byte配列全体をファイルに書き込んだりするだけなら、FileクラスのReadAllBytes/WriteAllBytesメソッドが便利だ。C#およびVBでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

バイナリ・ファイル(=テキスト・ファイル以外のファイル)を読み書きするには、FileStreamクラスとSeek/Read/Writeの各メソッドを利用する。C#およびVBでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

コンボボックス(ComboBoxコントロール)でユーザーによる入力を禁止して読み取り専用にするには、DropDownStyleプロパティを設定すればよい。C#およびVBでの設定方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

Windowsアプリケーションからコンソール・アプリケーションやバッチ・ファイルを起動する際、ただProcess.Startメソッドで実行するだけでは、余計なコマンド・プロンプトが開いてしまう。これをProcessStartInfoクラスによって解消する方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

金額や容量など、桁(けた)数が長い数値を表現する際、単位が判別しやすくなるように、3桁単位で区切り文字「,」を挿入することがよくある。C#およびVBでString.Formatメソッドを使って実現する方法を解説する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

画像データをネットワーク経由で読んだり書いたりするには、画像オブジェクトとバイナリ・データ(バイト配列)間の変換作業が欠かせない。C#およびVBでImageConverterクラスを利用する変換方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

ASCII(アスキー)コードとは、制御文字や半角の記号、数字、英大小文字に割り当てられた文字のコードである。このうちコードが0〜127である標準のASCIIコードを、C#およびVB.NETで扱う方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

CSVファイル(コンマ区切りのファイル)を読み込む処理には、.NET Framework 2.0で追加されたTextFieldParserクラスを活用すると便利だ。C#およびVB.NETでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

Windowsフォームにおけるフォーム自体の初期化処理には、フォームのコンストラクタやLoadイベント・ハンドラ、Activatedイベントを用いるより、.NET Framework 2.0で追加されたShownイベントの方が便利だ。C#およびVB.NETでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

.NETで文字列に文字列が含まれているかどうかを調べるには、IndexOfメソッドがよく利用される。しかし.NET Framework 2.0で追加されたContainsメソッドの方が、スッキリとしたコードを記述できる。C#およびVB.NETでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

.NET Frameworkには一定時間間隔でメソッドを呼び出すためのタイマ機能として、3種類のTimerクラスが用意されている。このうちスレッド・タイマのSystem.Threading.Timeクラスについて、C#およびVB.NETでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

Windowsアプリケーションで「読み込んでいます……」といった実行中の処理内容を簡潔に表示する場合、「タイトルバーのないダイアログ」を用いるという方法がある。C#およびVB.NETでのダイアログ作成方法を紹介する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

.NETのPathクラス(System.IO名前空間)には、ファイル名から拡張子を取得するGetExtensionメソッドと、ベース名を取得するGetFileNameWithoutExtensionメソッドが用意されている。C#およびVB.NETでの使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

VB.NET(Visual Basic .NET)で配列(一次元配列)を使用する場合、その宣言や割り当て、初期化にはいくつかの記述方法がある。本稿ではそれらについてまとめる。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

VB.NETには、文字列中の全角文字を半角文字(半角英数字、半角カタカナなど)に、あるいはその逆に変換するための関数が用意されている。その利用方法や注意点、C#からその関数を利用する方法について解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

本稿では、C#で配列(一次元配列)を使用する場合に必要となる初期化の方法や注意点についてまとめる。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

本稿では、.NET Frameworkの標準コントロールであるListViewコントロール(System.Windows.Forms名前空間)を活用するために、ListViewコントロールにデータを追加する方法を紹介する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

Windowsアプリケーションで、Loadイベント・ハンドラによってフォーム上のコントロールにフォーカスを設定する場合、Focusメソッドは使えない。その代わりにはActiveControlプロパティを活用すればよい。C#とVB.NETでの使い方を解説する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

DateTime構造体を介して得られる日付や時刻を、標準書式指定/カスタム書式指定文字列を使用して文字列に変更する方法を解説する(C# 6.0/VB 14対応)。

【遠藤孝信 かわさきしんじ , 共著】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

ASP.NETでは、C#やVB.NETのコード内からクライアント側のスクリプトを出力するために、RegisterStartupScriptメソッドとRegisterClientScriptBlockメソッドが提供されている。その使い方を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

Windowsアプリケーションでタイトル・バーに「(応答なし)」と表示されるのを回避するには、Applicationクラス(System.Windows.Forms名前空間)のDoEventsメソッドを活用すればよい。C#およびVB.NETで使う方法を解説する。

【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

数値を出力する際に出力幅を固定し、右詰めにしたり、数値のけた数が出力幅よりも少ない場合に「0」埋めしたりする方法を解説する(C# 6.0/VB 14対応)。

【遠藤孝信 かわさきしんじ , 共著】()
.NET TIPS:
【一色政彦 , デジタルアドバンテージ】()
.NET TIPS:

指定したディレクトリに含まれるすべてのファイルやディレクトリの名前を取得するには、Directoryクラス(System.IO名前空間)のstaticなメソッドを使用する。C#での取得方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

バイト列(byte型の要素からなる配列)と数値を相互に変換するためのメソッドは、BitConverterクラス(System名前空間)にまとめられている。C#での変換方法を解説する。

【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

.NET Frameworkではどの言語のバージョンにも、日本固有の暦である和暦を扱う機能が含まれている。C#およびVB.NETで西暦と和暦を変換する方法を解説する。

【川俣晶 , 株式会社ピーデー】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:

求める機能が.NET Frameworkのクラス・ライブラリに存在しない場合、その代わりに、.NETプログラムからWindowsシステムのAPIであるWin32 APIを直接呼び出せる。C#およびVB.NETでの実現方法を解説する。

【泉祐介 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()
.NET TIPS:
【川俣晶 , 株式会社ピーデー】()
.NET TIPS:
【遠藤孝信 , デジタルアドバンテージ】()

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。