请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

KingMan

中级会员

68

主题

148

帖子

554

积分

中级会员

积分
554
KingMan
中级会员   /  发表于:2017-4-7 15:15  /   查看:2731  /  回复:1
本帖最后由 KingMan 于 2017-4-7 17:03 编辑

你好,在使用TXTControl过程中遇到几个问题,想请教一下看有没有什么思路。
1.在TXTControl中表格,TEXTFIELD等对象都是可以复制的,导致这些对象的ID都会重复,如多个TABLE 的ID 是一样的。多个TEXTFIELD的ID也可能出现一样的。
2.我尝试了下,在textControl1_TableCreated textControl1_TextFieldCreated事件中,,但是在插入表格,或者添加文本域的时候并没有触发该事件,
private void textControl1_TableCreated(object sender, TableEventArgs e)
        {
            Table txt = textControl1.Tables.GetItem();
            if (txt == null || txt.ID >= 0)
                return;
            int iMaxId = 0;
            foreach (Table pNext in textControl1.Tables)
            {
                if (pNext.ID > iMaxId)
                    iMaxId = pNext.ID;
            }
            txt.ID = iMaxId;
        }

private void textControl1_TextFieldCreated(object sender, TextFieldEventArgs e)
        {
            TextField txt = textControl1.TextFields.GetItem();
            if (txt == null || txt.ID >= 0)
                return;
            int iMaxId = 0;
            foreach (TextField pNext in textControl1.TextFields)
            {
                if (pNext.ID > iMaxId)
                    iMaxId = pNext.ID;
            }
            txt.ID = iMaxId;
        }

3.假如现在我在TXTControl中有多个表格,每个表格表头都不一样,我现在想将每个表都存为一个BYTE[],存到数据库中,这样我可以在其他模板中直接调用引用BYTE[]加载进来
4.我想将一个TEXTFIELD带格式的,保存为byte[] 存储到数据库,怎么获取TEXTFIELD带格式的BYTE[] 数据。
5.如何设置TXTControl控件纸张,如要设置A4,B5纸张,还有如何设置横向等问题。

1 个回复

倒序浏览
gw0506
超级版主   /  发表于:2017-4-7 18:35:41
沙发
1。 没有太好的办法。只能写代码干预吧。add的时候检查id有没有重复,然后处理掉。
2. 这个事件只有在UI上从clipboard粘贴到tx上的时候才触发。代码写的添加不触发。
3. 我不知道你的问题是什么?如果是问怎么把table存成byte[],控件没有支持。
4,本身没有支持。
5. 你在文档里搜print就知道了。
  1. int m_curPage = 2;
  2. PrintDocument myPrintDoc = new PrintDocument();
  3. myPrintDoc.DefaultPageSettings.PaperSize = new PaperSize("default",
  4.                                                          textControl1.PageSize.Width,
  5.                                                          textControl1.PageSize.Height);
  6. myPrintDoc.DefaultPageSettings.Margins = new Margins(textControl1.PageMargins.Left,
  7.                                                      textControl1.PageMargins.Right,
  8.                                                      textControl1.PageMargins.Top,
  9.                                                      textControl1.PageMargins.Bottom);
  10. myPrintDoc.PrinterSettings.PrintRange = PrintRange.SomePages;
  11. myPrintDoc.PrinterSettings.FromPage = m_curPage;
  12. myPrintDoc.PrinterSettings.ToPage = m_curPage;
  13. textControl1.Print(myPrintDoc);
复制代码
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部