C# - RichTextBoxPrintCtrl 和 tabcontrol
C# - RichTextBoxPrintCtrl and tabcontrol
您好(抱歉我的英语不好),我在使用 RichTextBoxPrintCtrl 和 TabControl 打印 RTF 时遇到问题。
1) tabcontrol在Design上没有tabs,当Form Load时,它会通过方法AddTab(Title)
得到一个tabs。 (不要介意其他变量)。
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
,即 return 所选选项卡的 "Body":
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
.
我得到的错误是:
Error 1 'RichTextBoxPrintCtrl' is a 'namespace' but is used like a
'type'
如何在不将其拖放到设计表单中的情况下使用 RichTextBoxPrintCtrl
?
好的,我想出了解决方法:
而不是像这样声明:
RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl();
我们需要这样声明命名空间:
RichTextBoxPrintCtrl.RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl.RichTextBoxPrintCtrl();
一切正常 :) 谢谢;
您好(抱歉我的英语不好),我在使用 RichTextBoxPrintCtrl 和 TabControl 打印 RTF 时遇到问题。
1) tabcontrol在Design上没有tabs,当Form Load时,它会通过方法AddTab(Title)
得到一个tabs。 (不要介意其他变量)。
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
,即 return 所选选项卡的 "Body":
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
.
我得到的错误是:
Error 1 'RichTextBoxPrintCtrl' is a 'namespace' but is used like a 'type'
如何在不将其拖放到设计表单中的情况下使用 RichTextBoxPrintCtrl
?
好的,我想出了解决方法:
而不是像这样声明:
RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl();
我们需要这样声明命名空间:
RichTextBoxPrintCtrl.RichTextBoxPrintCtrl NameControl = new RichTextBoxPrintCtrl.RichTextBoxPrintCtrl();
一切正常 :) 谢谢;