2016-02-02 22 views
0

您好(对不起,我的英文很抱歉),使用RichTextBoxPrintCtrl和TabControl打印RTF时遇到问题。C# - RichTextBoxPrintCtrl和tabcontrol

1)Tabcontrol在Design上没有选项卡,当Form Load时,它会得到一个标签,其方法为AddTab(Title)。 (不要介意其他变量)。

private void AddTab(string Name = "Nuova Nota*") 
{ 
    RichTextBox Body = new RichTextBox(); 
    Body.Name = "Body"; 
    Body.Dock = DockStyle.Fill; 
    Body.ContextMenuStrip = contextMenuStrip1; 
    TabPage NewPage = new TabPage(); 
    string DocumentText = Nome; 
    if (Nome == "Nuova Nota*") 
    { 
     TabCount += 1; 
     DocumentText = Nome + TabCount; 
    } 
    NewPage.Name = DocumentText; 
    NewPage.Text = DocumentText; 
    tabControl1.Visible = true; 
    NewPage.Controls.Add(Body); 
    tabControl1.TabPages.Add(NewPage); 
    tabControl1.SelectedTab = NewPage; 
    Nomi_Files.Add(NewPage.Text); 
    Path_Files.Add(""); 
} 

2)一旦标签被创建,你就可以开始写,改变颜色,字体等... 要获得您所制作的文档的访问,我使用的是GetCurrentDocument返回了“身体”所选选项卡:

private RichTextBox GetCurrentDocument 
{ 
    get { return (RichTextBox)tabControl1.SelectedTab.Controls["Body"];} 
} 

现在,所有的功能(保存,打开,字体,颜色...)工作正常,我想打印文档,并保持风格,所以我一派和我发现这个:How to print the content of a RichTextBox control by using Visual C#

我发的RichTextBoxPrintCtrl.dll,在我的项目中添加了资源,在工具箱中添加了项目,但我无法更改从代码创建的RichTextBox,其中RichTextBoxPrintCtrl。 我得到的错误是:

错误1“RichTextBoxPrintCtrl的”是“命名空间”,但使用像 “类型”

我如何使用RichTextBoxPrintCtrl无需拖放在设计形式里面?

+0

你是否缺少'使用RichTextBoxPrintCtrl;'? – Chrono

+0

不,已经试过了,没有什么改变同样的错误 –

回答

0

好吧,我想通了,如何解决这个问题:

,而不是像声明:

RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl(); 

我们需要声明的命名空间,以便:

RichTextBoxPrintCtrl.RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl.RichTextBoxPrintCtrl(); 

一切正常:)谢谢;