TX Text Control 中为表格操作提供的丰富的编程接口,可以通过代码和集成对话框完成表格的插入、删除、合并、拆分以及表格样式设置等操作。本文主要是讲解如何获取当前表格中选中的单元格坐标。基本思路是获取TX中当前选中的范围,然后将单元格的坐标与选中范围作比较,以确定单元格是否被选中。
代码如下:
// 获取选中的单元格坐标
private string GetSelectedCells(){StringBuilder sb = new StringBuilder();
Table table = textControl1.Tables.GetItem();Selection curSelection = new Selection(textControl1.Selection.Start,textControl1.Selection.Length);
textControl1.Selection.Length = 0;// 获取选中单元格的起始单元格坐标
int iTableStartRow = table.Cells.GetItem().Row;
int iTableStartCol = table.Cells.GetItem().Column;
if (curSelection.Length != 0)
{textControl1.Selection.Start = curSelection.Start + curSelection.Length - 1;}// 获取选中单元格截止单元格坐标
int iTableEndRow = table.Cells.GetItem().Row;
int iTableEndCol = table.Cells.GetItem().Column;
// 循环所有单元格以检查当前单元格是否在选中单元格范围内
foreach (TableCell cell in textControl1.Tables.GetItem().Cells){if (cell.Row >= iTableStartRow && cell.Row <= iTableEndRow && cell.Column <= iTableEndCol && cell.Column >= iTableStartCol)
sb.Append(string.Format("[{0},{1}] ",cell.Row,cell.Column));}return sb.ToString();
}
源码下载:TX Text Control for WinForms X9