C# - Windows Formsでよく使うコントロールたち （Visual Studioなし環境向け）


# よく使うコントロール

|  クラス名 | 画面キャプチャ | ユーザインタフェース機能概要 | 補足  | My テンプレ |
|---|------------|---------|---------|------|
|  [`TextBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.textbox?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/d6d97c3f-c418-a184-e49c-09a6aa0d9872.png) | 文字列を表示・入力する | 設定（`Multiline`プロパティ）により、単一行 or 複数行に対応可能。  |  [記事](https://qiita.com/kob58im/items/bde46d18339d031f2cab) |
|  [`RichTextBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.richtextbox?view=netframework-4.8) |  | 文字列を表示・入力する。書式を付けられる。 |  [クセ強めの印象。使いこなすには慣れが要りそう。修羅の道・・・](https://qiita.com/kob58im/items/4b210c39232768489a1c) |   |
| [`ComboBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.combobox?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/879f96af-5720-70bd-62de-b775819be378.png)  | 選択子から文字列を選んで表示・入力する | ユーザーによる任意テキストの入力可 or 不可を設定可能。 |  [記事](https://qiita.com/kob58im/items/0e52d658a8f5079b75d8) |
| [`NumericUpDown`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.numericupdown?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/7c5ac430-596f-b348-6511-1f6195770fc6.png) | 数値を表示・入力する | あらかじめ設定した範囲内の数値の入力を、直接 or 上下ボタンで行える。10進小数も扱える。`Value`の型が扱いづらいかもしれない。 |  [記事](https://qiita.com/kob58im/items/6a6e337e0e76805849b3) |
| [`Button`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.button?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/5ac76e59-91df-dbe1-acdc-95fc3754fed4.png) | ボタンを表示する | とりあえず何か試したいときは大体これに`Click`イベントを登録して使う。 |  [記事](https://qiita.com/kob58im/items/b7fe39cd41d0c50d659d) |
| [`CheckBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.checkbox?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/2d8ff417-b0c2-63ae-e56c-e974267cc315.png) | チェック状態を入力する | 機能の有効無効をユーザーが選択できるようにする。 | [記事](https://qiita.com/kob58im/items/f85fb361b44cad05947e) |
| [`MenuStrip`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.menustrip?view=netframework-4.8) | 右記記事参照 | メニューを表示する | Form画面が増えて込み入ってきたらコレ。 | [記事](https://qiita.com/kob58im/items/2e940c4f56a28355f620) |
| [`PictureBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.picturebox?view=netframework-4.8) |  | 画像を表示する | 画像を表示させたり、キャンバスとして使える。 |  |
| [`ListView`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.listview?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/4d78c371-dcbd-8259-948a-1be7c4620ab9.png) | リストを表示する | Windowsのファイラであるエクスプローラのファイル一覧表示みたいなアレ。自分はいつも`View = View.Details`で使っており、行指向で表形式で表示するのに向いている。 |  [記事](https://qiita.com/kob58im/items/aea2d2bd3380449a9f6a) |
| [`TreeView`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.treeview?view=netframework-4.8) |  | 木構造を表示する | 最初に手を出すにはハードル高め。 |   |
| [`DataGridView`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.datagridview?view=netframework-4.8) |  | 表形式で表示・入力する | エクセルの表をイメージするとイメージ湧きやすいかも。クセ強めの印象。使いこなすには慣れが要りそう。 |    |
| [`SplitContainer`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.splitcontainer?view=netframework-4.8) | 右記記事参照 | 表示領域を分割してユーザがリサイズ容易にする |  |  [記事](https://qiita.com/kob58im/items/aa5e5079720c900cab40)　|
| [`TabControl`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.tabcontrol?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/f3fba899-9850-2554-0ced-0cfc88347f29.png) | タブ表示 |  |  [記事](https://qiita.com/kob58im/items/5b209c495408242e5e8b) |
| [`GroupBox`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.groupbox?view=netframework-4.8) |  |  |  |  |
| [`StatusStrip`](https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.statusstrip?view=netframework-4.8) | ![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/438183/6bdc8d3e-377d-77bf-3328-3e561f3839c7.png) | ステータスバー |  | [記事](https://qiita.com/kob58im/items/c9ab989e513a4506812e) |


# 子ウィンドウ
 - [C# - モーダルなサブウィンドウを開くサンプルコードべた書き（Visual Studio不使用） - Qiita](https://qiita.com/kob58im/items/a4ce3cb64b0f14080ab9)

# その他
 - [C# - よく使う機能の逆引きリファレンスを目指して - Qiita](https://qiita.com/kob58im/items/fd5ba48244bf66192603)

# 参考サイト

 - [コントロール(System.Windows.Forms) - .NET Tips (VB.NET,C#...)](https://dobon.net/vb/dotnet/control/index.html)
 - [C#プチリファレンス](https://csharp-ref.com/form_common.html) ・・・ 画面左側にメニューがあり、よく使う類のコントロールのプロパティが確認しやすいです。