ListView控件演示05:获取指定坐标点的列表项

示例说明:
代码示例演示 PictureBox 和 ListView 控件的用法。通过使用 BorderStyle 和 PictureBoxSizeMode 枚举分别设置 PictureBox.BorderStyle 和 PictureBox.SizeMode 属性来初始化 PictureBox。ListView 由 Samples 目录中的图片填充。当处理 ListView 控件的 MouseDown 事件时,将使用 GetItemAt 方法来确定某项是否被选定。如果某项被选定,事件处理程序将通过设置 PictureBox.Image 属性来显示选定的文件。
该示例要求 C:/Images目录中存在 JPG 文件。可以在源代码中的Images文件夹复制到C:盘下。

本来是直接从微软那边复制过来的。可是微软的代码也太毛病了吧!
反正我也理解这个方法的用处了,不如我自己来设计窗体得了。

关键方法:
ListView.GetItemAt():检索位于指定位置的项。

 

程序截图

ListView控件演示05:获取指定坐标点的列表项_第1张图片

 

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; using System.IO; namespace Demo05 { public partial class MainForm : Form { public MainForm() { InitializeComponent(); } private void MainForm_Load(object sender, EventArgs e) { this.InitializeListView(); this.PicturesListView.AutoResizeColumns(ColumnHeaderAutoResizeStyle.HeaderSize); } /// <summary> /// 读取目录中的图片文件列表,并显示在列表框中。 /// </summary> private void InitializeListView() { DirectoryInfo directory = new DirectoryInfo("C://Images"); FileInfo[] Files = directory.GetFiles("*.jpg"); if (Files != null) { this.PicturesListView.BeginUpdate(); foreach (FileInfo file in Files) { ListViewItem Item = new ListViewItem(); Item.Text = file.Name; Item.SubItems.Add(file.FullName); this.PicturesListView.Items.Add(Item); } this.PicturesListView.EndUpdate(); } } /// <summary> /// 获取鼠标单击位置的项,并显示所代表的图片文件。 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void PicturesListView_MouseDown(object sender, MouseEventArgs e) { ListViewItem SelectionItem = this.PicturesListView.GetItemAt(e.X, e.Y); if (SelectionItem != null) { this.PictureBox1.Image = Image.FromFile( SelectionItem.SubItems[1].Text); } } } }   

 

你可能感兴趣的:(object,ListView,File,null,Class,微软)