「色の設定」ダイアログボックスを表示するコードを紹介します。UI下図のUIを準備します。Button,TextBox,ColorDialog,Panelを配置します。ColorDialogは[ツールパレット]の[ダイアログ]カテゴリのCol
「フォント」ダイアログボックスを表示するコードを紹介します。UI下図のUIを準備します。FontDialogコントロールはツールパレットの[ダイアログ]カテゴリの中にある[FontDialog]をフォームへドラッグ&ドロップします。コード以
「名前を付けて保存」ダイアログボックスを表示するコードを紹介します。プログラム例UI"Widowsフォームアプリケーション"プロジェクトを新規作成します。プロジェクト作成後フォームを開きます。下図のデザイナ画面が表示されます。ツールボックス
「ファイルを開く」コモンダイアログボックスを表示するコードを紹介します。概要「ファイルを開く」顧問ダイアログボックスを利用する場合は、OpenFileDialog コントロールを利用します。プログラム例UI"Windowsフォームアプリケー
MDI親フォームのクライアント領域の大きさを取得する場合は、MdiClientコントロールのClientRectangleプロパティの値を参照します。UI以下のUIを準備します。FormMainIsMdiContainerプロパティをTru
MdiClientのControlAdded,ControlRemovedイベントハンドラを実装することでMDIアプリケーションに子フォームが追加、削除されたタイミングを検出できるようになります。プログラム実装例UI以下のUIを準備します。
MDIフォームの背景色の変更や背景への描画方法を紹介します。フォームのIsMdiContainerプロパティをTrueに設定し、MDI親フォームにするとフォームのBackColorプロパティを変更しても変更内容が反映されません。MDI親ウィ
MDI子フォームの一覧をメニューに表示します。UI下図のUIを準備します。IsMdiContainerプロパティをtrueにし、MenuStripを配置します。MenuStripを選択します。プロパティウィンドウのMdiWindowList
MDI子フォームを整列させるコードを紹介します。MDI親フォームのLayoutMdi()メソッドを呼び出すことで、MDI子フォームを整列できます。UI下図のUIを作成します。FormMainMenuStripを配置しメニューを作成します。F
MDIアプリケーションでMDI子フォームをすべて閉じたり、MDI子フォームの情報を取得するためにMDI子フォームの一覧を取得したいことがあります。ここではMDI子フォームの列挙について紹介します。MDI子フォームの一覧は、MDI親フォームの
単純なMDIフォームのアプリケーションを作成します。Winformアプリケーションプロジェクトを新規作成します。UIの準備メインフォームのデザイナを表示します。初期状態では下図の外観のフォームが表示されています。プロパティウィンドウを表示し
カーソルキー(方向キー)を用いてフォームのコントロールのフォーカスを移動させる方法を紹介します。UI下図のUIを作成します。"KeyPreview"プロパティを"True"に設定します。KeyPreviewプロパティの挙動についてはこちらの
フォームが閉じられる際の理由を取得するコードを紹介します。フォームが閉じられる際には、フォームのFormClosedイベントが発生します。FormClosedイベントの引数"FormClosedEventArgs"の"CloseReason
フォームの初回表示に処理をする場合について紹介します。Winformアプリケーションではフォームの初回表示時にはShownイベントが呼び出されます。Shownイベントに処理を実装することでフォームの初回表示時に処理を実行できます。UI下図の
フォームのリサイズ完了を検出する方法を紹介します。概要フォームの"ResizeEnd"イベントを用いるとフォームのリサイズ完了時にResizeEndイベントが発生し、リサイズの完了を検出できます。プログラム例Windows Formアプリケ
フォームの移動やリサイズの完了を検出する方法を紹介します。UI下図のUIを準備します。コード下記のコードを記述します。using System;using System.Collections.Generic;using System.Co
フォームの移動を拒否し、移動できないフォームを作成します。概要フォームの移動をブロックするには、ウィンドウメッセージを取得し、SC_MOVE のウィンドウメッセージをブロックすることで移動できないフォームを作成できます。プログラム例UI下図
プログラムのコードからフォームの表示位置を変更する方法を紹介します。UI下図のUIを準備します。実際に使用するボタンはbutton3, button4の2つです。コード以下のコードを記述します。コードはbutton3, button4のCl
プログラムコードからフォームのサイズ(幅、高さ)を変更する方法を紹介します。概要フォームの高さや幅を実行時に変更するには、Formオブジェクトの Width, Height プロパティを設定するか、Sizeプロパティの値を変更します。書式[
フォームを最大化した際のサイズと表示位置を指定するコードを紹介します。通常はフォームを最大化すると全画面表示になりますが、MaximizedBoundsプロパティを設定すると最大化した際のウィンドウサイズと表示位置を指定できます。UI下図の
ウィンドウの高さと幅を一定値以上にできないフォームの作成方法を紹介します。フォームのMaximumSizeプロパティを設定することで、ウィンドウの高さと幅の最小値を設定できます。UI下図のUIを準備します。プロパティの設定フォームを選択しプ
ウィンドウの高さと幅を一定値以下にできないフォームの作成方法を紹介します。フォームのMinimumSizeプロパティを設定することで、ウィンドウの高さと幅の最小値を設定できます。UI下図のUIを準備します。何も手を加えていない新規作成直後の
フォームでキーボードのキーイベント(KeyDown,KeyUp,KeyPress )をすべて受け取る方法を紹介します。概要フォームでキーボードのKeyDown,KeyUp,KeyPressをすべて受け取る場合は、フォームのKeyPrevie
プログラムからフォームの最大化や最小化をしたい場合があります。フォームのWindowStateプロパティを設定することでフォームの最大化や最小化ができます。UI下図のUIを準備します。コード以下のコードを記述します。using System
DateTime型の値からシステムで定義されている日本語の曜日名を求めるコードと実行結果を紹介します。概要DateTime型の値からシステムで定義されている日本語(現在のカルチャー)の曜日名を求めたいことがあります。DateTimeクラスの
DayOfWeek型の値からシステムで定義されている日本語の曜日名を求めたい場合があります。しかし、DayOfWeek型はenumの整数で定義されているため、日本語の曜日名を直接求めることはできません。ただし、DateTime型の値からDa
DateTime型の値から曜日を求めます。概要DateTime型の値から曜日を求める場合は、DateTimeオブジェクトの DayOfWeek プロパティを利用します。プログラム例UI以下のUIを準備します。コード下記のコードを記述します。
概要この記事では子フォームやサブフォームをメインフォームの中央に表示する方法を紹介します。モーダルフォームの場合 - ShowDialogメソッドを用いる場合モーダルフォームの場合は、"StartPosition"プロパティを"Center
アプリケーション実行時にフォームをスクリーンの中央に表示する方法を紹介します。フォームの初期状態での表示位置は"StartPosition"プロパティにより変更できます。フォームのデザイナ画面で"StartPosition"プロパティのコン
Windows Formアプリケーションでフォームの枠(境界線)や外観を変更する方法を紹介します。概要フォームの境界を変更する場合は、"FormBorderStyle"プロパティを変更します。"FormBorderStyle"のプロパティに
フォームの最大化ボタン、最小化ボタンを非表示にしてダイアログボックスのような外観に変えます。フォームの最大化ボタン、最小化ボタン、左上のアプリケーションアイコンを非表示にするには、フォームのControlBoxプロパティをFalseに変えま
リフレクションを用いて静的クラスのメソッドを呼び出すコードを紹介します。概要従来のプログラム言語では、呼び出す関数はコード中に記述し、パラメーターなどの場合分けで呼び出す関数を変えることはできましたが、文字列で指定した関数を呼び出すといった
C#でリフレクションを用いたインスタンスの作成とメソッドの呼び出しのコードを紹介します。概要プログラム例リフレクションを用いて stringオブジェクトを作成し、Trim()メソッドを呼び出し、文字列から先頭の空白を除去するプログラムです。
コントロールの外観をビットマップにコピーするコードを紹介します。UI以下のUIを作成します。コードusing System;using System.Collections.Generic;using System.ComponentMod
Taskクラスを用いた並列処理のコードを紹介します。概要Taskクラスを利用して並列処理を実行するには以下の手順を実行します。Taskオブジェクトを作成する。オブジェクト作成時のコンストラクタの引数に並列処理をさせるメソッド(デリゲート)を
別のフォームにフォーカスを移す方法を紹介します。UI下図のUIを作成します。コードusing System;using System.Collections.Generic;using System.ComponentModel;using