Windows MObile中ListView控件的用法详解


-前言:ListView在Windows Mobile中的应用非常广泛,也是Windows Mobile中很重要的一个控件,在此俺新手给他做个总结,方便其它新手参考哈!

--------------------
应用实例如下图:--------------------------------------------------------
                                                



1,动态绑定数据(数据源为xml文件):
      实例代码:
                        

/// <summary>
        /// 绑定OpenfileName.xml文件的内容到ListView上
        /// </summary>
        private void AddRoot()
        {
            DataTable dt = new DataTable();
            DataSet ds = new DataSet();
            if (File.Exists(strConfigFileUrl+"OpenfileName.xml"))
            {
                ds.ReadXml(strConfigFileUrl + "OpenfileName.xml");
                if (ds.Tables.Count < 1)
                {
                    return;
                }
                dt = ds.Tables[0];
                foreach (DataRow dr in dt.Rows)
                {
                    ListViewItem lvi = new ListViewItem();

                    string strFileName = dr["FileUrl"].ToString().Substring(dr["FileUrl"].ToString().LastIndexOf("\\") + 1);//获取文件名称

                    lvi.Text = strFileName;
                    lvi.SubItems.Add(dr["FileUrl"].ToString());
                    listView1.Items.Add(lvi);
                    //listView1
                }
            }
            else
            {
                MessageBox.Show("找不到文件", "提示:", MessageBoxButtons.OK, MessageBoxIcon.Asterisk,
                    MessageBoxDefaultButton.Button1);
            }
        }

2,动态绑定数组

      实例代码:
                        

/// <summary>
        /// 添加消息内容到ListView
        /// </summary>
        public void AddMessage()
        {
           
            string[] strArrayMs=Directory.GetFiles(ReadMessageSaveDirectory());
            for(int i=0;i<strArrayMs.Length;i++)
            {
                ListViewItem lvi = new ListViewItem();
                lvi.Text = strArrayMs[i].Substring(strArrayMs[i].LastIndexOf("\\") + 1); //获得文件名称  --------//添加第一项
                //string strMessageTitle = listView1.Items[listView1.SelectedIndices[0]].Text; //取到选中单行第一列的值
                if (OperateXml.SearchMessageXml(lvi.Text) == "Yes")   //绑定图片
                {
                    lvi.ImageIndex =1;
                }
                else
                {
                    lvi.ImageIndex=0;
                }

                lvi.SubItems.Add(File.GetCreationTime(strArrayMs[i]).ToString()); //添加第二项
                lvi.SubItems.Add(strArrayMs[i]);   //添加第三项
                listView1.Items.Add(lvi);
               
            }
        }

            效果如下图所示
                                    

 

posted @ 2009-09-21 15:51  深沉哥  阅读(3190)  评论(1编辑  收藏  举报