winform -----listview获得文件路径

huangnboo 2009-04-29 07:27:02
listview已经可以显示文件信息,陈列图标
我想选中文件,这样获得文件的完整路径呢
文件显示用treeview控制listview的

xx
在线等答案
提供下思路,最好有源码
急,谢谢!
...全文
164 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
gaoluyi 2009-04-29
  • 打赏
  • 举报
回复
ding
yafeya 2009-04-29
  • 打赏
  • 举报
回复

namespace FrmChange
{
partial class ListViewEx
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;

/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}

#region 组件设计器生成的代码

/// <summary>
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.listViewFile = new System.Windows.Forms.ListView();
this.btnDelete = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// listViewFile
//
this.listViewFile.Dock = System.Windows.Forms.DockStyle.Top;
this.listViewFile.Location = new System.Drawing.Point(0, 0);
this.listViewFile.Name = "listViewFile";
this.listViewFile.Size = new System.Drawing.Size(331, 267);
this.listViewFile.TabIndex = 0;
this.listViewFile.UseCompatibleStateImageBehavior = false;
//
// btnDelete
//
this.btnDelete.Dock = System.Windows.Forms.DockStyle.Bottom;
this.btnDelete.Location = new System.Drawing.Point(0, 266);
this.btnDelete.Name = "btnDelete";
this.btnDelete.Size = new System.Drawing.Size(331, 23);
this.btnDelete.TabIndex = 1;
this.btnDelete.Text = "delete";
this.btnDelete.UseVisualStyleBackColor = true;
this.btnDelete.Click += new System.EventHandler(this.btnDelete_Click);
//
// ListViewEx
//
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.Controls.Add(this.btnDelete);
this.Controls.Add(this.listViewFile);
this.Name = "ListViewEx";
this.Size = new System.Drawing.Size(331, 289);
this.ResumeLayout(false);

}

#endregion

private System.Windows.Forms.ListView listViewFile;
private System.Windows.Forms.Button btnDelete;
}
}


using System.Windows.Forms;
using System.IO;

namespace FrmChange
{
public partial class ListViewEx : UserControl
{
private readonly string[] pathArray = {
@"E:\PathArray\1.txt", @"E:\PathArray\2.txt", @"E:\PathArray\3.txt",
@"E:\PathArray\4.txt", @"E:\PathArray\5.txt", @"E:\PathArray\6.txt"
};

public ListViewEx()
{
InitializeComponent();
InitialListView();
}
private void InitialListView()
{
listViewFile.View = View.List;
listViewFile.CheckBoxes = true;
foreach (string path in pathArray)
{
if (File.Exists(path))
{
ListViewItem lvItemFile = new ListViewItem(path);
lvItemFile.Tag = path;
listViewFile.Items.Add(lvItemFile);
}
}
}

private void UpdateListView()
{
listViewFile.Items.Clear();
foreach (string path in pathArray)
{
if (File.Exists(path))
{
ListViewItem lvItemFile = new ListViewItem(path);
lvItemFile.Tag = path;
listViewFile.Items.Add(lvItemFile);
}
}
}

private void btnDelete_Click(object sender, System.EventArgs e)
{
foreach (ListViewItem lvItemFile in listViewFile.Items)
{
string path = lvItemFile.Tag as string;
if (!string.IsNullOrEmpty(path))
{
if (File.Exists(path) && lvItemFile.Checked)
{
File.Delete(path);
UpdateListView();
}
}
}
}
}
}

我做了个用户控件,你把代码贴到VS里面试试
yulien 2009-04-29
  • 打赏
  • 举报
回复
ding
huangnboo 2009-04-29
  • 打赏
  • 举报
回复
怎么还没人儿
来了
huangnboo 2009-04-29
  • 打赏
  • 举报
回复
我在listview旁边做了个删除按钮
我要怎样点击删除
就删除listview选中的文件呢?
huangnboo 2009-04-29
  • 打赏
  • 举报
回复
语言--------------------------------------------------------c#

110,525

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧