using DevExpress.Spreadsheet; using DevExpress.XtraEditors; namespace Yw.WinFrmUI.Phart { public partial class ClipboardCurveExcelDlg : XtraForm { public ClipboardCurveExcelDlg() { InitializeComponent(); this.spreadsheetControl1.Options.TabSelector.Visibility = DevExpress.XtraSpreadsheet.SpreadsheetElementVisibility.Hidden; this.spreadsheetControl1.Options.View.Charts.Antialiasing = DevExpress.XtraSpreadsheet.DocumentCapability.Enabled; this.spreadsheetControl1.Options.View.Charts.TextAntialiasing = DevExpress.XtraSpreadsheet.DocumentCapability.Enabled; this.spreadsheetControl1.Options.View.ShowColumnHeaders = false; this.spreadsheetControl1.Options.View.ShowPrintArea = false; this.spreadsheetControl1.Options.View.ShowRowHeaders = false; LimitToTwoColumns(); } /// /// 限制 SpreadsheetControl 只能有两列(A 和 B) /// private void LimitToTwoColumns() { Worksheet worksheet = this.spreadsheetControl1.Document.Worksheets[0]; // 隐藏从 C 列开始的所有列 for (int col = 3; col <= worksheet.Columns.LastUsedIndex + 1; col++) { worksheet.Columns[col].Visible = false; } // 禁用列插入和删除 //this.spreadsheetControl1.Options.Behavior.allow = false; //this.spreadsheetControl1.Options.Behavior.ColumnDelete = false; //// 禁用列调整宽度 //this.spreadsheetControl1.Options.Behavior..ColumnResize = false; // 设置列宽 worksheet.Columns["A"].WidthInPixels = 100; worksheet.Columns["B"].WidthInPixels = 100; // 保护工作表,防止用户修改列或行 worksheet.Protect("password", WorksheetProtectionPermissions.Default); } private void btnOk_Click(object sender, EventArgs e) { var data = new List<(double, double)>(); Worksheet worksheet = this.spreadsheetControl1.Document.Worksheets.ActiveWorksheet; int rowCount = worksheet.Rows.LastUsedIndex + 1; for (int row = 0; row < rowCount; row++) { double value1 = worksheet.Columns[0][row].Value.NumericValue; double value2 = worksheet.Columns[1][row].Value.NumericValue; data.Add((value1, value2)); } var a = data; this.DialogResult = DialogResult.OK; this.Close(); } } }