コード例 #1
0
        private void btnDelete_Click(object sender, EventArgs e)
        {
            int[] selectedRows = gridView.GetSelectedRows();
            if (selectedRows.Length == 0)
            {
                XtraMessageBox.Show("请至少选中一条记录", "提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                return;
            }
            if (DialogResult.Yes != XtraMessageBox.Show("确定要删除选中的记录吗?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Question))
            {
                return;
            }
            List <long> ids = new List <long>();

            foreach (int selectedRow in selectedRows)
            {
                long id = (long)gridView.GetRowCellValue(selectedRow, "Id");
                ids.Add(id);
                String date = (String)gridView.GetRowCellValue(selectedRow, "Time");
                DelectDir(String.Format("./Log/{0}", DateTime.Parse(date).ToString("yyyyMMddHHmmss")));
            }
            using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
            {
                db.TestInfos.Delete(item => ids.Contains(item.Id));
                db.CommitTransaction();
            }

            gridView.DeleteSelectedRows();
        }
コード例 #2
0
        private void SimpleButton_Click(object sender, RoutedEventArgs e)
        {
            List <int> checkedRows = gridControl.GetSelectedRowHandles().ToList();

            checkedRows = checkedRows.OrderByDescending(x => x).ToList();
            List <long> ids = new List <long>();

            foreach (int rowNum in checkedRows)
            {
                ids.Add((long)gridControl.GetCellValue(rowNum, "Id"));
                String date = (String)gridControl.GetCellValue(rowNum, "Time");
                DelectDir(String.Format("./Log/{0}", DateTime.Parse(date).ToString("yyyyMMddHHmmssfff")));
            }

            using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
            {
                db.TestInfos.Delete(item => ids.Contains(item.Id));
                db.CommitTransaction();
            }

            tableView.BeginInit();
            foreach (int rowNum in checkedRows)
            {
                tableView.DeleteRow(rowNum);
            }
            tableView.EndInit();
        }
コード例 #3
0
        private void gridControl_MouseDoubleClick(object sender, MouseButtonEventArgs e)
        {
            TableViewHitInfo hInfo = tableView.CalcHitInfo(e.GetPosition(tableView));

            if (hInfo.InRow)
            {
                int      rowNum   = hInfo.RowHandle;
                long     id       = (long)gridControl.GetCellValue(rowNum, "Id");
                TestInfo testInfo = null;
                using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
                {
                    var temp = from c in db.TestInfos where c.Id == id select c;
                    foreach (DataModels.TestInfo info in temp)
                    {
                        testInfo = new TestInfo
                        {
                            TestName = info.TestName,
                            Operator = info.Operator,
                            TestTime = info.Time,
                            Comment  = info.Comment
                        };
                    }
                }
                if (testInfo != null)
                {
                    HistoryDetailWindow detailWindow = new HistoryDetailWindow(testInfo);
                    detailWindow.Owner = this;
                    detailWindow.ShowDialog();
                }
            }
        }
コード例 #4
0
        private void HistoryForm_Load(object sender, EventArgs e)
        {
            dt.Columns.Add("TestName", typeof(String));
            dt.Columns.Add("Operator", typeof(String));
            dt.Columns.Add("Time", typeof(String));
            dt.Columns.Add("Comment", typeof(String));
            dt.Columns.Add("Id", typeof(long));
            using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
            {
                var temp = from c in db.TestInfos select c;
                foreach (DataModels.TestInfo info in temp)
                {
                    dt.Rows.Add(info.TestName, info.Operator, info.Time.ToString("yyyy-MM-dd HH:mm:ss"), info.Comment, info.Id);
                }
            }

            gridControl.DataSource = dt;
        }
コード例 #5
0
        protected void LoadHistoryData()
        {
            dt.Columns.Add("TestName", typeof(String));
            dt.Columns.Add("Operator", typeof(String));
            dt.Columns.Add("Time", typeof(String));
            dt.Columns.Add("Comment", typeof(String));
            dt.Columns.Add("Id", typeof(long));

            using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
            {
                var temp = from c in db.TestInfos select c;
                foreach (DataModels.TestInfo info in temp)
                {
                    dt.Rows.Add(info.TestName, info.Operator, info.Time.ToString("yyyy-MM-dd HH:mm:ss"), info.Comment, info.Id);
                }
            }
            gridControl.ItemsSource = dt;
        }
コード例 #6
0
        private void LoadTestInfo()
        {
            using (DataModels.DatabaseDB db = new DataModels.DatabaseDB())
            {
                var temp = from c in db.TestInfos where c.Id == recordId select c;
                DataModels.TestInfo testInfo = null;
                foreach (DataModels.TestInfo info in temp)
                {
                    testInfo = info;
                }
                editTestName.Text = testInfo?.TestName;
                editOperator.Text = testInfo?.Operator;
                editTestDate.Text = testInfo?.Time.ToString("yyyy-MM-dd HH:mm:ss");
                editComment.Text  = testInfo?.Comment;
                String strDateFile = @".\Log\" + testInfo?.Time.ToString("yyyyMMddHHmmss") + @"\History.dat";

                try
                {
                    using (FileStream fs = new FileStream(strDateFile, FileMode.Open))
                    {
                        BinaryFormatter formatter = new BinaryFormatter();
                        historyData = (HistoryData)formatter.Deserialize(fs);
                    }
                }
                catch (Exception ex)
                {
                    XtraMessageBox.Show("读取历史数据失败:" + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }

                if (historyData == null || historyData.Objects == null || historyData.Objects.Count == 0)
                {
                    return;
                }


                List <SeriesPoint> positionXBuffer    = new List <SeriesPoint>();
                List <SeriesPoint> positionMinXBuffer = new List <SeriesPoint>();
                List <SeriesPoint> positionMaxXBuffer = new List <SeriesPoint>();
                List <SeriesPoint> positionYBuffer    = new List <SeriesPoint>();
                List <SeriesPoint> positionMinYBuffer = new List <SeriesPoint>();
                List <SeriesPoint> positionMaxYBuffer = new List <SeriesPoint>();
                List <SeriesPoint> positionZBuffer    = new List <SeriesPoint>();
                List <SeriesPoint> positionMinZBuffer = new List <SeriesPoint>();
                List <SeriesPoint> positionMaxZBuffer = new List <SeriesPoint>();
                List <SeriesPoint> speedVxBuffer      = new List <SeriesPoint>();
                List <SeriesPoint> speedMinVxBuffer   = new List <SeriesPoint>();
                List <SeriesPoint> speedMaxVxBuffer   = new List <SeriesPoint>();
                List <SeriesPoint> speedVyBuffer      = new List <SeriesPoint>();
                List <SeriesPoint> speedMinVyBuffer   = new List <SeriesPoint>();
                List <SeriesPoint> speedMaxVyBuffer   = new List <SeriesPoint>();
                List <SeriesPoint> speedVzBuffer      = new List <SeriesPoint>();
                List <SeriesPoint> speedMinVzBuffer   = new List <SeriesPoint>();
                List <SeriesPoint> speedMaxVzBuffer   = new List <SeriesPoint>();
                foreach (S_OBJECT obj in historyData.Objects)
                {
                    positionXBuffer.Add(new SeriesPoint(obj.time, obj.X));
                    positionMinXBuffer.Add(new SeriesPoint(obj.time, obj.MinX));
                    positionMaxXBuffer.Add(new SeriesPoint(obj.time, obj.MaxX));
                    positionYBuffer.Add(new SeriesPoint(obj.time, obj.Y));
                    positionMinYBuffer.Add(new SeriesPoint(obj.time, obj.MinY));
                    positionMaxYBuffer.Add(new SeriesPoint(obj.time, obj.MaxY));
                    positionZBuffer.Add(new SeriesPoint(obj.time, obj.Z));
                    positionMinZBuffer.Add(new SeriesPoint(obj.time, obj.MinZ));
                    positionMaxZBuffer.Add(new SeriesPoint(obj.time, obj.MaxZ));
                    speedVxBuffer.Add(new SeriesPoint(obj.time, obj.VX));
                    speedMinVxBuffer.Add(new SeriesPoint(obj.time, obj.MinVx));
                    speedMaxVxBuffer.Add(new SeriesPoint(obj.time, obj.MaxVx));
                    speedVyBuffer.Add(new SeriesPoint(obj.time, obj.VY));
                    speedMinVyBuffer.Add(new SeriesPoint(obj.time, obj.MinVy));
                    speedMaxVyBuffer.Add(new SeriesPoint(obj.time, obj.MaxVy));
                    speedVzBuffer.Add(new SeriesPoint(obj.time, obj.VZ));
                    speedMinVzBuffer.Add(new SeriesPoint(obj.time, obj.MinVz));
                    speedMaxVzBuffer.Add(new SeriesPoint(obj.time, obj.MaxVz));
                }

                chartX.BeginInit();
                chartX.Series["位置X"].Points.AddRange(positionXBuffer.ToArray());
                chartX.Series["位置X上限"].Points.AddRange(positionMaxXBuffer.ToArray());
                chartX.Series["位置X下限"].Points.AddRange(positionMinXBuffer.ToArray());
                chartX.EndInit();

                chartY.BeginInit();
                chartY.Series["位置Y"].Points.AddRange(positionYBuffer.ToArray());
                chartY.Series["位置Y上限"].Points.AddRange(positionMaxYBuffer.ToArray());
                chartY.Series["位置Y下限"].Points.AddRange(positionMinYBuffer.ToArray());
                chartY.EndInit();

                chartZ.BeginInit();
                chartZ.Series["位置Z"].Points.AddRange(positionZBuffer.ToArray());
                chartZ.Series["位置Z上限"].Points.AddRange(positionMaxZBuffer.ToArray());
                chartZ.Series["位置Z下限"].Points.AddRange(positionMinZBuffer.ToArray());
                chartZ.EndInit();

                chartVx.BeginInit();
                chartVx.Series["速度VX"].Points.AddRange(speedVxBuffer.ToArray());
                chartVx.Series["速度VX上限"].Points.AddRange(speedMaxVxBuffer.ToArray());
                chartVx.Series["速度VX下限"].Points.AddRange(speedMinVxBuffer.ToArray());
                chartVx.EndInit();

                chartVy.BeginInit();
                chartVy.Series["速度VY"].Points.AddRange(speedVyBuffer.ToArray());
                chartVy.Series["速度VY上限"].Points.AddRange(speedMaxVyBuffer.ToArray());
                chartVy.Series["速度VY下限"].Points.AddRange(speedMinVyBuffer.ToArray());
                chartVy.EndInit();

                chartVz.BeginInit();
                chartVz.Series["速度VZ"].Points.AddRange(speedVzBuffer.ToArray());
                chartVz.Series["速度VZ上限"].Points.AddRange(speedMaxVzBuffer.ToArray());
                chartVz.Series["速度VZ下限"].Points.AddRange(speedMinVzBuffer.ToArray());
                chartVz.EndInit();

                chartPoints.BeginInit();
                FallPoint point = historyData.FallPoint;
                chartPoints.Series["预示落点"].Points.Clear();
                chartPoints.Series["预示落点"].Points.Add(new SeriesPoint(point.x, point.y));
                chartPoints.Series["落点误差"].Points.Add(new SeriesPoint(point.x - historyData.PointError,
                                                                      point.y + historyData.PointError, point.y - historyData.PointError));
                chartPoints.Series["落点误差"].Points.Add(new SeriesPoint(point.x + historyData.PointError,
                                                                      point.y + historyData.PointError, point.y - historyData.PointError));
                chartPoints.EndInit();
            }
        }