jiao419187544 发表于 2013-5-9 10:49:00

如何获取textControl.Selection内容中文本域?

您好,如题

iceman 发表于 2013-5-9 15:38:00

回复 1楼jiao419187544的帖子

jiao419187544 你好,

可以通过 TextFieldEntered 事件获取 TextField 是否被选择,代码如下:

      private void textControl1_TextFieldEntered(object sender, TXTextControl.TextFieldEventArgs e)
      {
            TXTextControl.TextField field = e.TextField;
      }

jiao419187544 发表于 2013-5-9 16:26:00

请问这个事件什么时候被触发呢?

jiao419187544 发表于 2013-5-9 16:57:00

这样有一个问题,即只有选中时鼠标光标经过文本域,才能够触发此事件,拥有局限性,还是通过selection的文本中判断有没有文本域包含的方法?

iceman 发表于 2013-5-9 18:39:00

回复 4楼jiao419187544的帖子

你好,
TX 本身没有提供该方法,
我们可以获取文档中所有 TextField 起始位置。在选择后判断该选择范围是否包含 TextField 的起始位置。获取代码如下:

            List<Point> textfiledList = new List<Point>();

            TXTextControl.TextFieldCollection tc = this.textControl1.TextFields;

            foreach (TXTextControl.TextField tx in tc)
            {
                textfiledList.Add(new Point(tx.Start, tx.Length + tx.Start));
            }
页: [1]
查看完整版本: 如何获取textControl.Selection内容中文本域?