Componente WindowForm ListView

ListView
1. Atributos
① Casilla de verificación con casillas de verificación en cada fila, ② Ver 5 tipos de vistas, ③ Alineación de elementos de contenido de alineación
④ ShowGroups muestran elementos en forma de grupos ⑤ Grupos de colección de grupos (similar al grupo de disco duro de mi computadora en c, d , e Letra de unidad) ⑥Colección de elementos ⑦MultiSelect permite múltiples selecciones
⑧SmallImageList ImageList control para todas las imágenes de vista excepto la vista de íconos grandes y la vista de
mosaico ⑨Propiedades específicas de vista detallada (Ver -> Detials): AllowColumnRecorder permite la clasificación de columnas, nombre de columna de columnas, cuadrícula de GridLines
⑩ grande Vista de íconos LargeIcon: Organizar automáticamente la imagen de los íconos AutoArrange LargeImageList colección grande de
íconos pequeños ver SmallIcon: AutoArrange
CheckedIndices colección de índices comprobados, la opción de gancho de la colección CheckedItems, selectedIndices conjunto de índices seleccionados, SelectedItems colección de elementos seleccionados
* Vista de lista No se admite la visualización de grupos
2. Evento
SelectedIndexChanged Cuando se cambia la selección, el encabezado de la columna ColumnClick cambia cuando el estado ItemChecked cambia
Artículo de referencia del control ListView
Vista de icono grande

Dictionary<string, string> dicGroup = new Dictionary<string, string>();
//初始化
private void FrmListView2_Load(object sender, EventArgs e)
{
    
    
    LoadImgList();		//加载图片
    //初始化分组信息
     lvList.Groups.Clear();
    lvList.Groups.Add(new ListViewGroup("花", HorizontalAlignment.Center));
    lvList.Groups.Add(new ListViewGroup("动物", HorizontalAlignment.Center));
    lvList.Groups.Add(new ListViewGroup("人物", HorizontalAlignment.Center));
    lvList.Groups.Add(new ListViewGroup("风景", HorizontalAlignment.Center));
    lvList.Items.Clear();
    //关系存储
    dicGroup.Add("花", "04");
    dicGroup.Add("动物", "01");
    dicGroup.Add("人物", "02");
    dicGroup.Add("风景", "03");

    lvList.ShowGroups = false;			//是否分组显示
    if (largeList!=null && largeList.Images.Count >0)
    {
    
    
        for(int i=0;i<largeList.Images.Count;i++)
        {
    
    
            string iText = largeList.Images.Keys[i];
            //添加ListView控件中的项
            ListViewItem li = new ListViewItem();
            li.Text = iText;
            li.ImageIndex =i;
            lvList.Items.Add(li);
        }
    }
    lvList.View = View.LargeIcon;		//指定视图模式
    lvList.LargeImageList = largeList;	//大图标使用的ImageList
    lvList.SmallImageList = smallList;	//除大图标以外所有视图使用的ImageList
}

Inserte la descripción de la imagen aquí

Vista de detalles

private void btnDetails_Click(object sender, EventArgs e)
{
    
    
    lvList.Items.Clear();
    lvList.Columns.Clear();
    //lvList.ShowGroups = false;
    lvList.View = View.Details;			//设置详细信息视图
    //列的添加
    lvList.Columns.Add("文件名", 100, HorizontalAlignment.Left);
    lvList.Columns.Add("创建日期", 150, HorizontalAlignment.Left);
    lvList.Columns.Add("类型", 80, HorizontalAlignment.Left);
    lvList.Columns.Add("大小", 60, HorizontalAlignment.Left);
    //项
    for (int i = 0; i < dic.Count; i++)
    {
    
    
        ListViewItem li = new ListViewItem();
        li.ImageIndex = i;
        li.Text = smallList.Images.Keys[i];
        li.SubItems.Add(File.GetCreationTime(dic[i]).ToString());//创建日期
        li.SubItems.Add(Path.GetExtension(dic[i]));				//类型
        long length = new FileInfo(dic[i]).Length;				//获取文件大小 B
        li.SubItems.Add((length / 1024).ToString());			//KB  
        if(lvList.ShowGroups)
        {
    
    
            foreach (ListViewGroup lvg in lvList.Groups)
            {
    
    
                //判断项文本的前面的编号是否与组所对应的编号一致,如果一致,就将该项分到这一组
                if (li.Text.Substring(0, 2) == dicGroup[lvg.Header])
                {
    
    
                    li.Group = lvg;						//设置项所属的组
                    break;
                }
            }
        }
        lvList.Items.Add(li);
    }
    lvList.GridLines = true;						//显示网格
}

Inserte la descripción de la imagen aquí

Vista agrupada

//分组
private void btnGroup_Click(object sender, EventArgs e)
{
    
    
     lvList.ShowGroups = true;      
     GroupShow();
 }
 //分组处理
 private void GroupShow()
 {
    
    
      for (int i = 0; i < lvList.Items.Count; i++)
      {
    
    
          foreach (ListViewGroup lvg in lvList.Groups)
          {
    
    
              //判断项文本的前面的编号是否与组所对应的编号一致,如果一致,就将该项分到这一组
              if (lvList.Items[i].Text.Substring(0, 2) == dicGroup[lvg.Header])
              {
    
    
                  lvList.Items[i].Group = lvg;//设置项所属的组
                  break;
              }
          }
      }
  }

Inserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/asdasd1fdsyrt/article/details/113923178
Recomendado
Clasificación