C#ListView控制項的屬性和實際操作

來源:互聯網
上載者:User

標籤:

常用屬性:

View設定或返回控制項的檢視類型

值 說明

1-LvwIcon 表徵圖類型

2-LvwSmallIcon 小表徵圖類型

3-LvwList 清單類型

4-LvwReport 報表類型

Arrange 設定後返回控制項的表徵圖相片順序(在表徵圖視圖下有效)

值 說明

1-LvwNone 不排列

2-LvwAutoLeft 自動靠右排列

3-LvwAutoTop 自動靠左排列

Icons、 SmallIcons、 ColumnHeaderIcons屬性

Icons指定表徵圖視圖時的表徵圖與ImageList的綁定

SmallIcons、 ColumnHeaderIcons指定列表視圖時的表徵圖與ImageList的綁定

PICTURE、PictureAlignment屬性

分別指定ListView控制項的背景圖片和布局方式 ListItems(Index) 屬性

ListItems 屬性是ListView控制項中清單項目的集合。

Index用於指定清單項目集合中的一個對象, 我們可以把這個對象看作對一行的引用 ListItems集合的屬性

1. Text 設定或返回顯示文本

2. key 關鍵字

3. index 索引編號

4. icon , smallicon 不同視圖時顯示儲存格的表徵圖

5. checked 給checkboxes 打√

6. selected 使處於選定狀態

7. ListSubitems(index) 集合 我們可以把這個集合看作對這行中儲存格的引用 Text 設定或返回儲存格顯示的內容 Reporticon 設定儲存格的表徵圖

8. Subitems(index) 設定或返回儲存格文本 == ListSubitems(index).text ColumnHeaders(index) 屬性

ColumnHeaders 屬性是ListView控制項中列標題的集合

1. text 顯示標題文本

2. key

3. index

4. icon 指定標題表徵圖

5. alignment 指定index列的對齊 (注意:第一列也就是清單項目不能指定)

6. position 返回當前列的索引

7. subitemindex 返回指定列的listsubitem索引 TextBackgroud 屬性

決定text的背景是透明還是ListView的背景色 值 0 lvwTransparent 透明 1 lvw 不透明(用listview的背景色)

Ghosted 屬性 logic 決定是否虛狀 HideColumnHeaders 屬性

隱藏表頭 LabelWrap 屬性 標籤轉行 View.LargeIcon 或 View.SmallIcon 時才使用該屬性 FullRowSelect 整行顯示

HotTracking 熱點追蹤 滑鼠指標自動調整為手型 HoverSelection 屬性 自動聚焦 滑鼠指標自動調整為手型 AllowColumnReorder屬性

值設定.t.時,使用者可以用滑鼠選中1列拖至其他地方進行重新排列 Sorted屬性 當值為.t.時,

列表按字母排序 常用方法:

ListItems.add(index,key,text,icon,smallicon) 向listitems添加一清單項目。

Index 插入清單項目的編號 Key 插入清單項目的關鍵字

Text 插入清單項目的文本 Icon 當為表徵圖視圖時要求顯示的表徵圖

Smallicon 當為小表徵圖視圖時要求顯示的表徵圖 Clear

清除listitems集合中所有的清單項目 Remove清除選定行 L1=thisform.view1 L1.listitems.remove(L1.selectedItem.index) AllowColumnReorder屬性

值設定.t.時,使用者可以用滑鼠選中1列拖至其他地方進行重新排列 常用事件:

AfterLabelEdit 編輯當前選擇的列表對象之後發生 BeforeLabelEdit 編輯當前選擇的列表對象之前發生

ItemClick 單擊某一列表對象時發生 參數 item 對當前清單項目的引用 事件 AfterLabelEdit:編輯ListItem對象的標籤時被觸發。

BeforeLabelEdit:編輯ListItem對象的標籤後出發。 ColumnClick:單擊欄位標題時觸發。參數中可以獲得被單擊的列對象。通常用於排序。

ItemClick:單擊某行或某ListItem時觸發。參數中可以獲得被單擊的ListItem對象。 方法 FindItem:搜尋ListItem對象。

參數: string:搜尋字串。 value:在ListItem的哪部分中搜尋(LvwText、LvwSubItem、LvwTag);index:開始搜尋的位置。

match:匹配方式。 HitTest:檢索位於特定座標處的ListItem對象。 vb 中的執行個體 Private Sub Form_load() ‘確保ListView控制項的view屬性為報表視圖。

ListView1.View=lvwReport ‘添加三列。 ListView1.ColumnHeaders.Add,"Name","姓名" ListView1.ColumnHeaders.Add,"Sex","性別"

ListView1.ColumnHeaders.Add,"Age","年齡" ‘向控制項添加ListItem對象。 Dim itmX As ListItem ‘添加column1的名稱。

Set itmX=ListView1.ListItems.Add(1,"ZL","張力") ‘使用SubItemIndex將SubItem與正確的ColumnHeader關聯。

使用關鍵字("Sex")指定正確的ColumnHeader。

itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男" ‘使用ColumnHeader關鍵字將SubItems字串與 ‘正確的ColumnHeader關聯。

itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="19" Set itmX=ListView1.ListItems.Add(1,"LF","李芳")

itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男" itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="22" Set

itmX=ListView1.ListItems.Add(1,"WW","王偉") itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男"

itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="24" End Sub Private Sub ListView1_ColumnClick(ByVal ColumnHeader As

ComctlLib.ColumnHeader) Select Case ColumnHeader.Key Case "Sex":

ListView1.SortKey=1 ListView1.SortOrder=lvwAscending ListView1.Sorted=True Case "Age":

ListView1.SortKey=2 ListView1.SortOrder=lvwAscending ListView1.Sorted=True End Select End Sub

例二 Private Sub UserForm_Initialize() ListView1.ColumnHeaders.Add , ,

"QQ號" ‘添加QQ號列 ListView1.ColumnHeaders.Add , ,

"呢稱" ‘添加呢稱列 ListView1.ColumnHeaders.Add , ,

"來自何處" ‘添加來自何處列 ListView1.View = lvwReport ‘‘設定顯示方式為報表格式 End Sub 代碼說明:

1、在工作表中用Column表示列。而在Listview控制項中,用ColumnHeaders對象來操作列,而添加新的列可以用ColumnHeaders對象的ADD方法。

具體如下:

ListView1.ColumnHeaders.Add 序號,唯一的字串標識,列標顯示文字,列寬,列的內容對齊,所使用的表徵圖序號。

如本例中:

ListView1.ColumnHeaders.Add , ,"QQ號"

2、Listview控制項的View 屬性決定著它的顯示的方式,

具體如下:

ListView1.View = lvwIcon ‘表徵圖顯示

ListView1.View = lvwSmallIcon ‘小表徵圖顯示

ListView1.View = lvwList ‘列表顯示

ListView1.View = lvwReport ‘報表顯示

添加效果: 樣本檔案:

代碼: Private Sub UserForm_Initialize() ‘聲明變數類型 Dim ITM As ListItem ‘添加QQ號列,

列寬佔總寬度的三分之一,靠左對齊 ListView1.ColumnHeaders.Add ,

, "QQ號", ListView1.Width / 3, lvwColumnLeft ‘添加呢稱列,

列寬佔總寬度的三分之一,置中對齊 ListView1.ColumnHeaders.Add ,

, "呢稱", ListView1.Width / 3, lvwColumnCenter ‘添加來自何處列,

列寬佔總寬度的三分之一,靠右對齊 ListView1.ColumnHeaders.Add ,

, "來自何處", ListView1.Width / 3, lvwColumnRight ‘設定顯示方式為報表格式 ListView1.View = lvwReport ‘顯示表格線

ListView1.Gridlines = True ‘設定迴圈,填充記錄 For i = 1 To [A65536].End(xlUp).Row ‘添加記錄 Set ITM = ListView1.ListItems.Add() ‘

添加記錄的列名 定義產生一個新記錄,新行 ITM.Text = Cells(i, 1) ‘添加記錄的記錄文本說明 ITM.SubItems(1) = Cells(i, 2) ‘

添加記錄的第一個欄位的內容,在第二列上顯示 ITM.SubItems(2) = Cells(i, 3) Next i End Sub

代碼說明:

1、ListView1的Gridlines屬性為True時顯示表格線,為False不顯示表格線。

2、在ListView控制項中,添加記錄要通過ListItems集合對象來實現,如本例中Set ITM = ListView1.ListItems.Add()

3、設定第一列的內容是通過text屬性來添加,而以後各列的添加則通過SubItems對象來實現。

第2列為SubItems(1)

第3列為SubItems(2)..........

4、在Listview控制項第1列只能靠左對齊,而不能採取其他對齊

5、儲存格參照:CELLS(行,列) 增加列 listView1.ColumnHeaders.Add 增加行 listView1.ListItems.Ad

 

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace ListView
{
public partial class Form1 : Form
  {
public Form1()
  {
InitializeComponent();
  }

private void butzengjia_Click(object sender, EventArgs e)
  {
       listView1.Items.Add(txbxingming.Text);
       listView1.Items[listView1.Items.Count - 1].SubItems.Add(txbxingbie.Text);
       listView1.Items[listView1.Items.Count - 1].SubItems.Add(txbnianling.Text);
       listView1.Items[listView1.Items.Count - 1].SubItems.Add(txbminzu.Text);
       txbxingming.Text = "";
       txbxingbie.Text = "";
       txbnianling.Text = "";
       txbminzu.Text = "";
  }

private void butshanchu_Click(object sender, EventArgs e)
  {
for (int i = 0; i < listView1.Items.Count; i++)
  {
       if (listView1.Items[i].SubItems[0].Text == txbxingming.Text)
            listView1.Items.RemoveAt(i);
  }
         txbxingming.Text = "";
         txbxingbie.Text = "";
         txbnianling.Text = "";
         txbminzu.Text = "";
  }
 }
}

 

 

C#ListView控制項的屬性和實際操作

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.