Shuxia Ning
2025-01-17 a0bce3b366451b3ca94e676eb98dd7b415375c14
WinFrmUI/Yw.WinFrmUI.Phart.Core/02-universal/02-edit/UniversalChartExcelEditCtrl.cs
@@ -1,4 +1,6 @@
namespace Yw.WinFrmUI.Phart
using Yw.WinFrmUI.Phart;
namespace Yw.WinFrmUI.Phart
{
    public partial class UniversalChartExcelEditCtrl : DevExpress.XtraEditors.XtraUserControl
    {
@@ -8,6 +10,7 @@
            this.gridView1.SetDefaultEditView();
            this.gridView1.BorderStyle = DevExpress.XtraEditors.Controls.BorderStyles.NoBorder;
            this.repImgCmbFeatType.Items.Add("穿过点", Yw.Ahart.eFeatType.Through, -1);
            this.repImgCmbFeatType.Items.Add("二次拟合", Yw.Ahart.eFeatType.Quadratic, -1);
            this.repImgCmbFeatType.Items.Add("三次拟合", Yw.Ahart.eFeatType.Cubic, -1);
            this.repImgCmbFeatType.Items.Add("四次拟合", Yw.Ahart.eFeatType.Quartic, -1);
@@ -20,6 +23,8 @@
            {
                this.gridView1.FocusedRowHandle = index;
            };
            this.Enabled = false;
        }
@@ -54,6 +59,7 @@
            this.barFeatType.EditValue = _feat_type;
            this.bindingSource1.DataSource = _def_pt_list;
            this.bindingSource1.ResetBindings(false);
            this.Enabled = true;
        }
@@ -122,15 +128,54 @@
        {
            if (_def_pt_list == null || !_def_pt_list.Any())
                return;
            if (_def_pt_list == null || _def_pt_list.Count <= 4)
                return;
            var row = this.gridView1.GetCurrentViewModel(_def_pt_list);
            if (row == null)
                return;
            var count = _def_pt_list.Count - 1;
            var bol = PhartVerifyHelper.VerifyCount(_feat_type, count);
            if (!bol)
                return;
            _def_pt_list.Remove(row);
            this.bindingSource1.ResetBindings(false);
            SetChart(_feat_type, _def_pt_list);
        }
        //粘贴板覆盖
        private void barBtnPastePlateCovering_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
        {
            if (!ClipboardCurveTextUIHelper.CopyDouble(out List<List<double?>> list))
                return;
            if (list == null || list.Count < 1)
                return;
            if (list.Count != 2)
            {
                TipFormHelper.ShowError("数据不完整");
                return;
            }
            var cell_count = list.Count;
            var min_row_count = list.Min(x => x.Count);
            var pt_list = new List<Yw.Geometry.Point2d>(min_row_count);
            for (int i = 0; i < min_row_count; i++)
            {
                var x = list[0][i];
                var y = list[1][i];
                if (x.HasValue && y.HasValue)
                {
                    pt_list.Add(new Geometry.Point2d(x.Value, y.Value));
                }
            }
            var bol = PhartVerifyHelper.VerifyCount(_feat_type, pt_list.Count);
            if (!bol)
                return;
            _def_pt_list.Clear();
            _def_pt_list.AddRange(pt_list);
            this.bindingSource1.ResetBindings(false);
            SetChart(_feat_type, _def_pt_list);
        }
        /// <summary>
        /// 获取数据
@@ -143,7 +188,6 @@
                return false;
            return true;
        }
    }