根据您的需求我写了一个我的实现- this.fpSpread1.CellClick += new FarPoint.Win.Spread.CellClickEventHandler(this.fpSpread1_CellClick);
复制代码 下面这种实现是最初的版本。看起来e.ColumnHeader在我这里总是可行的。没有碰到过楼主的问题。- private void fpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
- {
- if (e.Button == System.Windows.Forms.MouseButtons.Right && e.ColumnHeader)
- {
- contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
- }
- }
复制代码 不过为了保险起见。我又写了这个实现,相信应该能够解决您的问题。- private void fpSpread1_CellClick(object sender, FarPoint.Win.Spread.CellClickEventArgs e)
- {
- Point p = fpSpread1.PointToClient(MousePosition);
- if (e.Button == System.Windows.Forms.MouseButtons.Right && fpSpread1.HitTest(p.X, p.Y).Type == FarPoint.Win.Spread.HitTestType.ColumnHeader)
- {
- contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
- }
- }
复制代码 |