免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
ListView控件的使用

近日在用ListView中的一些注意點,和公用代碼,整理如下

1.ListView.Items.Clear而不是ListView.Clear

一般如果ListView是動態(tài)填充的,我們在填充之前都會先進(jìn)行清理。但需要注意一下,我們是清理Items,如果去直接Clear整個ListView,就連原先定義好的列都沒有了

2.給ListView綁定數(shù)據(jù)

ListView并不能直接進(jìn)行綁定,而是要通過代碼。究其原因,因為它在綁定的時候,還需要設(shè)置圖片等信息。而ListView一般都與TreeView配合使用,它的綁定行為是通過TreeView的點擊來引發(fā)的

        /// <summary>        /// 當(dāng)點擊了左邊的Treeview的時候觸發(fā)事件        /// </summary>        /// <param name="sender"></param>        /// <param name="e"></param>        private void treeView1_NodeMouseClick(object sender,             TreeNodeMouseClickEventArgs e)        {            TreeNode node = e.Node;            List<DTOStudent> result = new List<DTOStudent>();            if (node.Nodes.Count == 0)//如果不是根節(jié)點            {                //按照專業(yè)讀取學(xué)員信息                result = dal.GetStudentBySpec(node.Text);            }            else            {                //讀取全部學(xué)員信息                result = dal.GetAllStudents();            }            BindListView(result);        }        private void BindListView(List<DTOStudent> result)        {            //將ListView先進(jìn)行清理            //一定要注意,是Items.Clear,而不是ListView1.Clear            listView1.Items.Clear();            //兩個ImageList也清理一下(因為是動態(tài)添加圖片)            imageList1.Images.Clear();            imageList2.Images.Clear();            int i = 0;            foreach (DTOStudent student in result)            {                ListViewItem item = new ListViewItem(student.UID);                //動態(tài)得到每個學(xué)員所對應(yīng)的圖片                Image image = Utility.ImageProcessor.ConvertToImage(student.Photo);                //加入到兩個ImageList里面去                //這兩個ImageList與ListView的LargeIcon和SmallIcon對應(yīng)                imageList1.Images.Add(image);                imageList2.Images.Add(image);                item.ImageIndex = i;                i++;                listView1.Items.Add(item);                item.SubItems.Add(student.Age.ToString());                item.SubItems.Add(student.FirstName);                item.SubItems.Add(student.LastName);            }        }

 

3.切換ListView的顯示視圖

        private void 大圖標(biāo)ToolStripMenuItem_Click(object sender, EventArgs e)        {            listView1.View = View.LargeIcon;        }        private void 小圖標(biāo)ToolStripMenuItem_Click(object sender, EventArgs e)        {            listView1.View = View.SmallIcon;        }        private void 清單ToolStripMenuItem_Click(object sender, EventArgs e)        {            listView1.View = View.List;        }        private void 詳細(xì)詳細(xì)ToolStripMenuItem_Click(object sender, EventArgs e)        {            listView1.View = View.Details;        }

4.一些公用代碼(圖片和字節(jié)轉(zhuǎn)換)

using System.Drawing;using System.Runtime.Serialization.Formatters.Binary;using System.IO;namespace Utility{    public class ImageProcessor    {        /// <summary>        /// 把圖片轉(zhuǎn)換為字節(jié)(主要是考慮存儲到數(shù)據(jù)庫)        /// </summary>        /// <param name="fileName"></param>        /// <returns></returns>        public static byte[] ConvertToBytes(string fileName) {            Image image = Image.FromFile(fileName);            BinaryFormatter bf = new BinaryFormatter();            MemoryStream ms = new MemoryStream();            bf.Serialize(ms, image);            byte[] result = new byte[ms.Length];            ms.Position = 0;            ms.Read(result, 0, result.Length);            ms.Close();            return result;        }        /// <summary>        /// 從字節(jié)再生成一個圖片(主要是從數(shù)據(jù)庫讀?。?       /// </summary>        /// <param name="buffer"></param>        /// <returns></returns>        public static Image ConvertToImage(byte[] buffer) {            MemoryStream ms = new MemoryStream(buffer);            BinaryFormatter bf = new BinaryFormatter();            Image result = (Image)bf.Deserialize(ms);            ms.Close();            return result;        }    }}

 

大致截圖如下

 

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
WebService傳輸DataSet的一點想法和實踐
asp.net中文件如何上傳到服務(wù)器上
C# DataSet對象序列化并壓縮和反序列化及解壓縮
datatable序列化為byte[]
C# Form,Control 控件序列化
C#中ListView的簡單使用方法
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服