找回密码
 立即注册

QQ登录

只需一步,快速开始

DCAgile

中级会员

83

主题

247

帖子

794

积分

中级会员

积分
794

活字格认证微信认证勋章元老葡萄

DCAgile
中级会员   /  发表于:2015-9-7 14:44  /   查看:6392  /  回复:9
1.TX 模版是否支持合并?如果支持,合并后的模版是否可以同时保持原有模版中的事件(如果可以,建议提供实例)?
2.如何可以 希望可以提供一个实例??

9 个回复

倒序浏览
iceman
社区贡献组   /  发表于:2015-9-7 15:54:00
沙发
回复 1楼DCAgile的帖子

您好,
先加载一个文件,再选择希望加载模板的位置后,加载第二个模板,测试代码如下:

  1.             this.textControl1.Load(filename, TXTextControl.StreamType.RichTextFormat);
  2.             this.textControl1.Selection.Start = 1;
  3.             this.textControl1.Selection.Length = 0;
  4.             this.textControl1.Selection.Load(filename, TXTextControl.StreamType.RichTextFormat);
复制代码


希望您能够对我的回复进行评分。这样有助于我们对服务质量的提升。


谢谢

评分

参与人数 1满意度 +5 收起 理由
DCAgile + 5 谢谢

查看全部评分

回复 使用道具 举报
DCAgile
中级会员   /  发表于:2015-9-7 17:35:00
板凳
回复 2楼iceman的帖子

1.希望可以提供一个实例:实例要求如下:
  有A、B两个模版,A、B两个模版中分别存在一个click事件
  合并后希望A、B两个模版的事件均可正常使用。

注意:事件中能够 弹出一个MessageBox即可
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-7 18:34:00
地板
回复 3楼DCAgile的帖子

能否把你的模板发到论坛上来,我进行测试?另外,合并文档我总结了一篇博客您可以参考下:
http://blog.gcpowertools.com.cn/ ... in_combinedocs.aspx
回复 使用道具 举报
DCAgile
中级会员   /  发表于:2015-9-8 15:46:00
5#
回复 4楼iceman的帖子

不好意思,我这边不方便提供模版,随意创建两个模版即可

主要希望可以实现模版合并后,各个模版中的原有事件能够保持即可(模版可以随意创建)
回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-8 17:22:00
6#
回复 5楼DCAgile的帖子

抱歉,当前我不太了解您那边Click事件是如何添加的。如果你指的是模板中有TextField或者其它域,点击事件是在 TX 上添加的,并非在模板里面,所以事件和模板是脱离的,并不互相造成影响。
回复 使用道具 举报
DCAgile
中级会员   /  发表于:2015-9-11 17:56:00
7#

模版合并与事件处理

回复 6楼iceman的帖子

如BookMark附件所示:
以下路径下有模版两个,分别为:
BookMark\BookMark\bin\Debug\Template\bookmark.doc
BookMark\BookMark\bin\Debug\Template\bookmark2.doc

1.如何在合并后的模版(即TxControl)中添加原有模版中的事件(即,bookmark.doc 和 bookmark2.doc 中的所有事件)???

BookMark.rar

61.96 KB, 下载次数: 94

回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-14 10:38:00
8#
回复 7楼DCAgile的帖子

给您拨打电话得知今天请假,明天我们电话沟通这个问题。
回复 使用道具 举报
DCAgile
中级会员   /  发表于:2015-9-15 13:49:00
9#

bookmark添加事件

回复 8楼iceman的帖子

bookmark添加事件

BookMark2.rar

64.29 KB, 下载次数: 89

回复 使用道具 举报
iceman
社区贡献组   /  发表于:2015-9-15 14:33:00
10#
回复 9楼DCAgile的帖子

问题并不是产品使用问题,是业务逻辑问题,并且第四个TextField,设置文本是 tf3,替换成tf4就OK了。
替换代码如下:

  1. private void NewMethod()
  2.         {
  3.             DTC = this.txContent.DocumentTargets;
  4.             this.txContent.DocumentLinkClicked += textControl1_DocumentLinkClicked;
  5.             List<int> bookmarks = new List<int>();

  6.             foreach (DocumentTarget item in DTC)
  7.             {
  8.                 bookmarks.Add(item.Start);
  9.             }

  10.             //第一个TextField            
  11.             this.txContent.Select(bookmarks[0], bookmarks[1] - bookmarks[0]);
  12.             TextField tf = new TextField();
  13.             tf.Text = this.txContent.Selection.Text;
  14.             this.txContent.Selection.Text = "";
  15.             this.txContent.Select(bookmarks[0], 0);
  16.             this.txContent.TextFields.Add(tf);

  17.             //第二个TextField
  18.             this.txContent.Select(bookmarks[2], bookmarks[3] - bookmarks[2]);
  19.             TextField tf2 = new TextField();
  20.             tf2.Text = this.txContent.Selection.Text;
  21.             this.txContent.Selection.Text = "";
  22.             this.txContent.Select(bookmarks[2], 0);
  23.             this.txContent.TextFields.Add(tf2);

  24.             //第三个TextField
  25.             this.txContent.Select(bookmarks[4], bookmarks[5] - bookmarks[4]);
  26.             TextField tf3 = new TextField();
  27.             tf3.Text = this.txContent.Selection.Text;
  28.             this.txContent.Selection.Text = "";
  29.             this.txContent.Select(bookmarks[4], 0);
  30.             this.txContent.TextFields.Add(tf3);

  31.             //第四个TextField
  32.             this.txContent.Select(bookmarks[6], bookmarks[7] - bookmarks[6]);
  33.             TextField tf4 = new TextField();
  34.             tf4.Text = this.txContent.Selection.Text;
  35.             this.txContent.Selection.Text = "";
  36.             this.txContent.Select(bookmarks[6], 0);
  37.             this.txContent.TextFields.Add(tf4);

  38.             this.txContent.TextFieldClicked += textControl1_TextFieldClicked;
  39.         }
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部