日期:2014-05-17  浏览次数:20431 次

winform如何动态在richtextbox里面添加表格
我希望在richtextbox里面动态添加表格,然后在表格内插入文本内容,我该如何做到
------最佳解决方案--------------------
 (<cell>+ <tbldef> /row),
------其他解决方案--------------------
引用:
引用:
rtf格式是有标准的,网上有很多资料。参考rtf文件、RTF文件格式研究报告
……
看的我相当的头大,我在考虑是不是采用最笨的办法算了,用WEBBROWSER算了,发布一个软件还必须顺带发布一个网站,或者整合在本地浏览?

我把那段RTF简化了一下,发现最简单的加框的代码应该是这样的了
 StringBuilder st = new StringBuilder();
        private void button1_Click(object sender, EventArgs e)
        {
            st.Append(@"\rtf1\fbidis\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}");
            st.Append(@"{\trowd\brdrs \cellx2000\pard\intbl\kerning2\f0\fs21\cell\row}");
            richTextBox1.Rtf = "{" + st.ToString() + "}";
        }
------其他解决方案--------------------
= 0x2000;
                        }
                    }
                    if ((this.ScrollBars & RichTextBoxScrollBars.Vertical) != RichTextBoxScrollBars.None)
                    {
                        createParams.Style 
------其他解决方案--------------------
= 0x200;
                }
                return createParams;
            }
        }

        // P/Invoke declarations
        [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Auto)]
        private static extern IntPtr LoadLibrary(string path);
    }
这段代码编译后作为控件应用,可以将RTF的表格复制到RICHTEXTBOX里面

另有一段代码应该也可以参考,我同样无法理解
StringBuilder st = new StringBuilder();
        private void button1_Click(object sender, EventArgs e)
        {
            st.Append(@"\rtf1\fbidis\ansi\ansicpg936\deff0\deflang1033\deflangfe2052{\fonttbl{\f0\froman\fprq2\fcharset0 Times New Roman;}{\f1\fnil\fcharset134 \'cb\'ce\'cc\'e5;}}{\colortbl ;\red0\green0\blue0;}\viewkind4\uc1\trowd\trgaph108\trleft-108\trbrdrt\brdrs\brdrw10\brdrcf1 \trbrdrl\brdrs\brdrw10\brdrcf1 \trbrdrb\brdrs\brdrw10\b