Exemple #1
0
        private void FilesListView1_MouseDown(object sender, MouseEventArgs e)
        {
            try
            {
                //双击保持状态
                if (e.Clicks > 1)
                {
                    ListViewItem lvi = FilesListView1.GetItemAt(e.X, e.Y);
                    if (lvi == null)
                    {
                        return;
                    }
                    lvi.Checked = !lvi.Checked;
                }

                //单击选中
                if (FilesListView1.GetItemAt(e.X, e.Y).Checked)
                {
                    FilesListView1.GetItemAt(e.X, e.Y).Checked = false;
                }
                else
                {
                    FilesListView1.GetItemAt(e.X, e.Y).Checked = true;
                }
            }
            catch
            {
            }
        }
        private void GetData()
        {
            PathTextBox1.Text = "";
            PathTextBox1.Text = CommonClassIDP.sLastSelectPath;
            FilesListView1.Items.Clear();
            string[] sFiles;
            try
            {
                sFiles = Directory.GetFiles(PathTextBox1.Text, "*.cit", IncludeSubFolderCheckBox1.Checked ? SearchOption.AllDirectories : SearchOption.TopDirectoryOnly);
            }
            catch
            {
                MessageBox.Show("获取所有文件出错,请检查子目录");
                return;
            }
            FilesListView1.BeginUpdate();
            foreach (string v in sFiles)
            {
                string   status        = CommonClassIDP.cdp.QueryDataInfoHead(v);
                string[] sDataInfoHead = status.Split(new char[] { ',' });
                //iDataType; sDataVersion; sTrackCode; sTrackName; iDir;
                //sTrain; sDate; sTime; iRunDir;iKmInc;
                //fkmFrom; fkmTo; iSmaleRate; iChannelNumber;
                if (sDataInfoHead[0].Contains("0"))/**/
                {
                    FilesListView1.Items.Add(sDataInfoHead[4]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].Name = v;

                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[3]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[5]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[10]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[7]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[8]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[6]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(sDataInfoHead[14]);
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(Path.GetFileName(v));
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add((new FileInfo(v)).Length.ToString());
                    FilesListView1.Items[FilesListView1.Items.Count - 1].SubItems.Add(Path.GetDirectoryName(v));
                }
                Application.DoEvents();
            }
            FilesListView1.EndUpdate();
        }