/// <summary> /// 右键 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void fpSpread1_MouseUp(object sender, MouseEventArgs e) { int ActiveRowIndex = -1; if (e.Button == MouseButtons.Right) { this.contextMenu1.Items.Clear(); FarPoint.Win.Spread.Model.CellRange c = fpSpread1.GetCellFromPixel(0, 0, e.X, e.Y); if (c.Row >= 0) { this.fpSpread1.ActiveSheet.ActiveRowIndex = c.Row; this.fpSpread1.ActiveSheet.AddSelection(c.Row, 0, 1, 1); ActiveRowIndex = c.Row; } else { ActiveRowIndex = -1; } if (ActiveRowIndex < 0) { return; } ToolStripMenuItem mnuCopyOrder = new ToolStripMenuItem(); mnuCopyOrder.Text = "复制"; mnuCopyOrder.Click += new EventHandler(mnuCopyOrder_Click); this.contextMenu1.Items.Add(mnuCopyOrder); this.contextMenu1.Show(this.fpSpread1, new Point(e.X, e.Y)); } }
private void fpItemView_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { bool isClickOnCell = false; FarPoint.Win.Spread.Model.CellRange cellRange = fpItemView.GetCellFromPixel(0, 0, e.X, e.Y); if (cellRange.Column != -1 && cellRange.Row != -1) { shtItemView.SetActiveCell(cellRange.Row, cellRange.Column); shtItemView.AddSelection(cellRange.Row, cellRange.Column, 1, 1); isClickOnCell = true; } if (isClickOnCell) { editToolStripMenuItem.Enabled = ActivePermission.Edit; deleteToolStripMenuItem.Enabled = ActivePermission.Delete; } else { editToolStripMenuItem.Enabled = false; deleteToolStripMenuItem.Enabled = false; } cmsItem.Show(fpItemView, e.Location); } }
private void fpView_MouseDown(object sender, MouseEventArgs e) { // ตัดสินใจว่าจะให้แสดง ContextMenu หรือไม่? if (e.Button == MouseButtons.Right) { FarPoint.Win.Spread.Model.CellRange range = fpView.GetCellFromPixel(0, 0, e.X, e.Y); if (range == null || range.Row == -1 || range.Column == -1) { m_bShowContext = false; } else { fpView.ActiveSheet.SetActiveCell(range.Row, range.Column); fpView.ShowRow(0, range.Row, VerticalPosition.Center); fpView.ActiveSheet.ClearSelection(); fpView.ActiveSheet.AddSelection(range.Row, 0, 1, shtView.Columns.Count); // Activate SelectionChanged event. fpView_SelectionChanged(sender, new SelectionChangedEventArgs(fpView.GetRootWorkbook(), range)); m_bShowContext = true; } } else { m_bShowContext = false; } }
private void fpView_MouseDown(object sender, MouseEventArgs e) { if (e.Button == MouseButtons.Right) { bool isClickOnCell = false; FarPoint.Win.Spread.Model.CellRange cellRange = fpView.GetCellFromPixel(0, 0, e.X, e.Y); if (cellRange.Column != -1 && cellRange.Row != -1) { shtView.SetActiveCell(cellRange.Row, cellRange.Column); shtView.AddSelection(cellRange.Row, cellRange.Column, 1, 1); isClickOnCell = true; } if (isClickOnCell) { NZString TranID = new NZString(null, shtView.Cells[shtView.ActiveRowIndex, (int)eColView.ISSUE_NO].Value); bool canEdit = CheckIssueDate(TranID); editToolStripMenuItem.Enabled = canEdit && ActivePermission.Edit; deleteToolStripMenuItem.Enabled = canEdit && ActivePermission.Delete; } else { editToolStripMenuItem.Enabled = false; deleteToolStripMenuItem.Enabled = false; } cmsOperation.Show(fpView, e.Location); } }
private void fpSpread1_DragOver(object sender, System.Windows.Forms.DragEventArgs e) { if (e.Data.GetDataPresent(typeof(System.Int32))) { e.Effect = DragDropEffects.Move; Point p = fpSpread1.PointToClient(new Point(e.X, e.Y)); FarPoint.Win.Spread.Model.CellRange range = fpSpread1.GetCellFromPixel(0, 0, p.X, p.Y); if (range.RowCount == -1) { return; } if (range.Row == this.fpSpread1.GetViewportTopRow(0) && range.Row != 0) { this.fpSpread1.SetViewportTopRow(0, range.Row - 1); System.Threading.Thread.Sleep(100); } if (range.Row == this.fpSpread1.GetViewportBottomRow(0) && range.Row != this.fpSpread1_Sheet1.RowCount - 1) { this.fpSpread1.SetViewportTopRow(0, this.fpSpread1.GetViewportTopRow(0) + 1); System.Threading.Thread.Sleep(100); } } }
/// <summary> /// 压缩显示 /// </summary> private void lessShow() { try { for (int j = 2; j < 5; j++) { string startValue = this.neuSpread1_Sheet1.Cells[0, j].Tag.ToString(); int startRow = 0; //起点行 int endRow = 0; for (int i = 1; i < this.neuSpread1_Sheet1.RowCount; i++) { string currentValue = this.neuSpread1_Sheet1.Cells[i, j].Tag.ToString(); if (startValue != currentValue) { endRow = i - 1; if (endRow - startRow > 0) { for (int k = startRow + 1; k <= endRow; k++) { this.neuSpread1_Sheet1.SetValue(k, j, ""); } FarPoint.Win.Spread.Model.CellRange cr = new FarPoint.Win.Spread.Model.CellRange(startRow, j, endRow - startRow + 1, 1); this.neuSpread1.ActiveSheet.Models.Span.Add(cr.Row, cr.Column, cr.RowCount, cr.ColumnCount); } startValue = this.neuSpread1_Sheet1.Cells[i, j].Tag.ToString(); startRow = i; } //最后收尾 if (i == this.neuSpread1_Sheet1.RowCount - 1) { endRow = i - 1; if (i - startRow > 0) //不止一行 { for (int k = startRow + 1; k <= i; k++) { this.neuSpread1_Sheet1.SetValue(k, j, ""); } FarPoint.Win.Spread.Model.CellRange cr = new FarPoint.Win.Spread.Model.CellRange(startRow, j, endRow - startRow + 2, 1); this.neuSpread1.ActiveSheet.Models.Span.Add(cr.Row, cr.Column, cr.RowCount, cr.ColumnCount); } else //最后一行单列,不需要合并 { } } //end if(i == this.fpSpread1_Sheet1.RowCount-1) } } //end private void lessShow() } catch (Exception ee) { MessageBox.Show(ee.Message + "设置压缩显示错误"); } }
private void fpSpread1_DragDrop(object sender, System.Windows.Forms.DragEventArgs e) { if (e.Data.GetDataPresent(typeof(System.Int32))) { Point p = this.fpSpread1.PointToClient(new Point(e.X, e.Y)); FarPoint.Win.Spread.Model.CellRange range = this.fpSpread1.GetCellFromPixel(0, 0, p.X, p.Y); if (range.RowCount == -1) { return; } int sourceRow = int.Parse(e.Data.GetData(typeof(System.Int32)).ToString()); int objectRow = range.Row; //加到objectRow前一行 int sortID = int.Parse(this.fpSpread1_Sheet1.GetText(objectRow, 9)); int sourceSort = sortID - 1; this.fpSpread1_Sheet1.SetValue(sourceRow, 9, sourceSort, false); #region 校对位置 [email protected] if (objectRow > this.fpSpread1_Sheet1.ActiveRowIndex) { this.fpSpread1_Sheet1.ActiveRowIndex = objectRow - 1; } else { this.fpSpread1_Sheet1.ActiveRowIndex = objectRow; } #endregion //重新排序 SortInfo[] sort = new SortInfo[1]; sort[0] = new SortInfo(9, true, System.Collections.Comparer.Default); fpSpread1_Sheet1.SortRange(0, 1, fpSpread1_Sheet1.RowCount, 9, true, sort); //重新赋值排序号 for (int i = 0; i < this.fpSpread1_Sheet1.RowCount; i++) { this.fpSpread1_Sheet1.SetValue(i, 9, 2 * i, false); } } }
/// <summary> /// 压缩显示 /// </summary> private void LessShow() { //正常情况,压缩显示的时候,可以把四列同时压缩,就不用列循环了 if (this.neuSpread1_Sheet1.RowCount < 1) { return; } for (int j = 2; j < 4; j++) { string startValue = this.neuSpread1_Sheet1.Cells[0, j].Tag.ToString(); int startRow = 0; //起点行 int endRow = 0; for (int i = 1; i < this.neuSpread1_Sheet1.RowCount; i++) { string currentValue = this.neuSpread1_Sheet1.Cells[i, j].Tag.ToString(); if (startValue != currentValue) { endRow = i - 1; //1.设置压缩合并 if (endRow - startRow > 0) { for (int k = startRow + 1; k <= endRow; k++) { this.neuSpread1_Sheet1.SetValue(k, j, ""); } FarPoint.Win.Spread.Model.CellRange cr = new FarPoint.Win.Spread.Model.CellRange(startRow, j, endRow - startRow + 1, 1); this.neuSpread1.ActiveSheet.Models.Span.Add(cr.Row, cr.Column, cr.RowCount, cr.ColumnCount); } //2.设置颜色 this.neuSpread1.StopCellEditing(); for (int m = startRow; m <= endRow; m++) { if (this.neuSpread1_Sheet1.Rows[startRow - 1].BackColor != System.Drawing.Color.White) { this.neuSpread1_Sheet1.Rows[m].BackColor = System.Drawing.Color.White; } else { this.neuSpread1_Sheet1.Rows[m].BackColor = System.Drawing.Color.Linen; } } startValue = this.neuSpread1_Sheet1.Cells[i, j].Tag.ToString(); startRow = i; } //最后收尾 if (i == this.neuSpread1_Sheet1.RowCount - 1) { endRow = i - 1; if (i - startRow > 0) //不止一行 { for (int k = startRow + 1; k <= i; k++) { this.neuSpread1_Sheet1.SetValue(k, j, ""); } FarPoint.Win.Spread.Model.CellRange cr = new FarPoint.Win.Spread.Model.CellRange(startRow, j, endRow - startRow + 2, 1); this.neuSpread1.ActiveSheet.Models.Span.Add(cr.Row, cr.Column, cr.RowCount, cr.ColumnCount); } else //最后一行单列,不需要合并 { } //2.设置颜色 this.neuSpread1.StopCellEditing(); for (int m = startRow; m <= i; m++) { if (this.neuSpread1_Sheet1.Rows[startRow - 1].BackColor != System.Drawing.Color.White) { this.neuSpread1_Sheet1.Rows[m].BackColor = System.Drawing.Color.White; } else { this.neuSpread1_Sheet1.Rows[m].BackColor = System.Drawing.Color.Linen; } } } //end if(i == this.fpSpread1_Sheet1.RowCount-1) } } //end private void lessShow() }