C# ListViewの使い方を詳しく解説
I I. ListViewクラス
1. よく使われる基本属性: (1) FullRowSelect: 選択モードを選択するかどうかを設定します。 (デフォルトは false) ヒント: このプロパティは、詳細ビューでのみ意味を持ちます。 (2) GridLines: 行と列の間にグリッド線を表示するかどうかを設定します。 (デフォルトは false) ヒント: このプロパティは、詳細ビューでのみ意味を持ちます。 (3)AllowColumnReorder: 列ヘッダーをドラッグして列の順序を変更できるかどうかを設定します。 (デフォルトは false) ヒント: このプロパティは、詳細ビューでのみ意味を持ちます。(7) LabelEdit: ユーザーがコントロール内の項目のラベルを編集できるかどうかを設定します。詳細ビューの場合、行の最初の列の内容のみを編集できます。 (デフォルトはfalse)
(8)チェックボックス:制御内の各アイテムの横にチェックボックスを表示するかどうかを設定します。 (デフォルトは false)
(12) SelectedItems: コントロール内で選択されている項目を取得します。
(13) CheckedItems: コントロールの現在のチェック ボックスで選択されている項目を取得します。
(18) HideSelection: コントロールにフォーカスがないときに、選択された項目が引き続き強調表示されるかどうかを設定します。 (デフォルトはfalse)
(19)showgroups:グループにアイテムを表示するかどうかを設定します。 (デフォルトは false);
2. よく使用されるメソッド:
(1) BeginUpdate: EndUpdate メソッドを呼び出す前にコントロールを記述することは避けてください。大量のデータを挿入する場合、コントロールのちらつきを効果的に回避し、速度を大幅に向上させることができます。
(3) EnsureVisible: リスト ビューは、指定されたインデックス アイテムのアイテム行までスクロールします。 (効果は TopItem プロパティと似ています) (4) FindItemWithText: 指定されたテキスト値で始まる最初の ListViewItem を検索します。
(5) FindNearestItem: 指定された検索方向に従って、指定された点から開始して次のアイテムを検索します。ヒント: このメソッドは、LargeIcon ビューまたは SmallIcon ビューでのみ使用できます。
3. よく使用されるイベント:
(1) AfterLabelEdit: ユーザーがアイテムのラベルの編集を終了したときに発生し、LabelEdit 属性が true である必要があります。
(2) BeforeLabelEdit: ユーザーがアイテムのラベルの編集を開始すると発生します。
(3) ColumnClick: ユーザーがリスト ビュー コントロールの列ヘッダーをクリックすると発生します。
2. ListView の 5 つのビュー:
1. LargeIcon: 各項目は、その下にラベルが付いた最大化されたアイコンとして表示されます。 (効果については下の図を参照してください)
2. SmallIcon: 各項目は右側にラベルが付いた小さなアイコンとして表示されます。 (効果については下の写真を参照してください)
3. リスト: 各項目は右側にラベルが付いた小さなアイコンとして表示されます。項目は列に配置され、列ヘッダーはありません。 (効果については、下の図を参照してください) 4. 詳細: どの列も表示できますが、小さなアイコンとラベルを含めることができるのは最初の列のみであり、他の列項目にはテキスト情報のみが表示され、列ヘッダーを持つことができます。 (効果については下の写真を参照してください)
5. タイル: 各項目はフルサイズのアイコンとして表示され、その右側に項目ラベルとサブ項目情報が表示されます。 (Windows XP および Windows Server 2003 シリーズのみサポート)
①詳細ビュー:
this.listView1.SmallImageList = this.imageList1 //listView のアイコン セットを imageList1 にバインドします
(1) リスト ヘッダーの作成 (覚えておいてください)最初に列ヘッダーを作成する必要があります)
ColumnHeader ch= new ColumnHeader(); nbsp;ch.Text = "列标题1"; //设置列标题 ch.Width = 120; //设置列宽度 ch.TextAlign = HorizontalAlignment.Left; //设置列的对齐方式 this.listView1.Columns.Add(ch); //将列头添加到ListView控件。
Rreee
ColumnHeader ch= new ColumnHeader(); ch.Text = "列标题1"; //设置列标题 ch.Width = 120; //设置列宽度 ch.TextAlign = HorizontalAlignment.Left; //设置列的对齐方式 this.listView1.Columns.Add(ch); //将列头添加到ListView控件。
rrreerReeeee
(3) 表示項目R
this.listView1.Columns.Add("列标题1", 120, HorizontalAlignment.Left); //一步添加
RrreeRreeeeee を削除 (5) 高設定 (Imageelist を使用して実現) )
this.listView1.Columns.Add("列标题1", 120, HorizontalAlignment.Left); //一步添加
this.listView1.BeginUpdate(); //数据更新,UI暂时挂起,直到EndUpdate绘制控件,可以有效避免闪烁并大大提高加载速度 for (int i = 0; i < 10; i++) //添加10行数据 { ListViewItem lvi = new ListViewItem(); lvi.ImageIndex = i; //通过与imageList绑定,显示imageList中第i项图标 lvi.Text = "subitem" + i; lvi.SubItems.Add("第2列,第"+i+"行"); lvi.SubItems.Add("第3列,第"+i+"行"); this.listView1.Items.Add(lvi); } this.listView1.EndUpdate(); //结束数据处理,UI界面一次性绘制。
(6) クリア
this.listView1.BeginUpdate(); //数据更新,UI暂时挂起,直到EndUpdate绘制控件,可以有效避免闪烁并大大提高加载速度 for (int i = 0; i < 10; i++) //添加10行数据 { ListViewItem lvi = new ListViewItem(); lvi.ImageIndex = i; //通过与imageList绑定,显示imageList中第i项图标 lvi.Text = "subitem" + i; lvi.SubItems.Add("第2列,第"+i+"行"); lvi.SubItems.Add("第3列,第"+i+"行"); this.listView1.Items.Add(lvi); } this.listView1.EndUpdate(); //结束数据处理,UI界面一次性绘制。
foreach (ListViewItem item in this.listView1.Items) { for (int i = 0; i < item.SubItems.Count; i++) { MessageBox.Show(item.SubItems[i].Text); } }
ランニングエフェクト:
②largeIcon view:foreach (ListViewItem item in this.listView1.Items) { for (int i = 0; i < item.SubItems.Count; i++) { MessageBox.Show(item.SubItems[i].Text); } }
foreach (ListViewItem lvi in listView1.SelectedItems) //选中项遍历 { listView1.Items.RemoveAt(lvi.Index); // 按索引移除 //listView1.Items.Remove(lvi); //按项移除 }
foreach (ListViewItem lvi in listView1.SelectedItems) //选中项遍历 { listView1.Items.RemoveAt(lvi.Index); // 按索引移除 //listView1.Items.Remove(lvi); //按项移除 }
ImageList imgList = new ImageList(); imgList.ImageSize = new Size(1, 20);// 设置行高 20 //分别是宽和高 listView1.SmallImageList = imgList; //这里设置listView的SmallImageList ,用imgList将其撑大
ImageList imgList = new ImageList(); imgList.ImageSize = new Size(1, 20);// 设置行高 20 //分别是宽和高 listView1.SmallImageList = imgList; //这里设置listView的SmallImageList ,用imgList将其撑大
1. グループ化:
this.listView1.Clear(); //从控件中移除所有项和列(包括列表头)。 this.listView1.Items.Clear(); //只移除所有的项。
this.listView1.Clear(); //从控件中移除所有项和列(包括列表头)。 this.listView1.Items.Clear(); //只移除所有的项。
this.listView1.View = View.LargeIcon; this.listView1.LargeImageList = this.imageList2; this.listView1.BeginUpdate(); for (int i = 0; i < 10; i++) { ListViewItem lvi = new ListViewItem(); lvi.ImageIndex = i; lvi.Text = "item" + i; this.listView1.Items.Add(lvi); } this.listView1.EndUpdate();

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











C#.NETインタビューの質問と回答には、基本的な知識、コアの概念、高度な使用が含まれます。 1)基本知識:C#は、Microsoftが開発したオブジェクト指向言語であり、主に.NETフレームワークで使用されています。 2)コアの概念:委任とイベントは動的な結合方法を可能にし、LINQは強力なクエリ関数を提供します。 3)高度な使用:非同期プログラミングは応答性を向上させ、式ツリーは動的コード構造に使用されます。

C#は、Microsoftによって開発された最新のオブジェクト指向プログラミング言語であり、.NETフレームワークの一部として開発されています。 1.C#は、カプセル化、継承、多型を含むオブジェクト指向プログラミング(OOP)をサポートしています。 2。C#の非同期プログラミングは非同期を通じて実装され、適用応答性を向上させるためにキーワードを待ちます。 3. LINQを使用してデータ収集を簡潔に処理します。 4.一般的なエラーには、null参照の例外と、範囲外の例外インデックスが含まれます。デバッグスキルには、デバッガーと例外処理の使用が含まれます。 5.パフォーマンスの最適化には、StringBuilderの使用と、不必要な梱包とボクシングの回避が含まれます。

C#.NETアプリケーションのテスト戦略には、ユニットテスト、統合テスト、エンドツーエンドテストが含まれます。 1.単位テストにより、コードの最小ユニットがMSTEST、ヌニット、またはXUNITフレームワークを使用して独立して動作することを保証します。 2。統合テストでは、一般的に使用されるシミュレートされたデータと外部サービスを組み合わせた複数のユニットの機能を検証します。 3.エンドツーエンドのテストでは、ユーザーの完全な操作プロセスをシミュレートし、通常、セレンは自動テストに使用されます。

c#.netisversatileforbothwebanddesktopdevelopment.1)forweb、useasp.netfordynamicapplications.2)fordesktop、equindowsorwpfforrichinterfaces.3)usexamarinforcross-platformdeveliment、enabling deshacrosswindows、

C#.NETは、複数のアプリケーション開発をサポートする強力なツールとライブラリを提供するため、依然として重要です。 1)C#は.NETフレームワークを組み合わせて、開発を効率的かつ便利にします。 2)C#のタイプの安全性とゴミ収集メカニズムは、その利点を高めます。 3).NETは、クロスプラットフォームの実行環境とリッチAPIを提供し、開発の柔軟性を向上させます。

C#シニア開発者とのインタビューでは、非同期プログラミング、LINQ、.NETフレームワークの内部作業原則などのコア知識をマスターする必要があります。 1.非同期プログラミングは、非同期を通じて操作を簡素化し、アプリケーションの応答性を向上させるのを待ちます。 2.LinqはSQLスタイルでデータを操作し、パフォーマンスに注意を払います。 3.ネットフレームワークのCLRはメモリを管理し、ガベージコレクションに注意して使用する必要があります。

c#.netissuitableforenterprise-levelApplicationsとsystemduetoitsSystemdutyping、richlibraries、androbustperformance.

C#は、エンタープライズレベルのアプリケーション、ゲーム開発、モバイルアプリケーション、Web開発で広く使用されています。 1)エンタープライズレベルのアプリケーションでは、C#がasp.netcoreにWebAPIを開発するためによく使用されます。 2)ゲーム開発では、C#がUnityエンジンと組み合わされて、ロールコントロールやその他の機能を実現します。 3)C#は、コードの柔軟性とアプリケーションのパフォーマンスを改善するために、多型と非同期プログラミングをサポートします。
