📄 frmdetailtext.cs
字号:
this.lnkSelectAll.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkSelectAll_LinkClicked);
//
// lnkPaste
//
this.lnkPaste.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lnkPaste.AutoSize = true;
this.lnkPaste.BackColor = System.Drawing.Color.Transparent;
this.lnkPaste.Location = new System.Drawing.Point(272, 32);
this.lnkPaste.Name = "lnkPaste";
this.lnkPaste.Size = new System.Drawing.Size(29, 17);
this.lnkPaste.TabIndex = 1;
this.lnkPaste.TabStop = true;
this.lnkPaste.Text = "粘贴";
this.lnkPaste.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkPaste_LinkClicked);
//
// lnkCopy
//
this.lnkCopy.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lnkCopy.AutoSize = true;
this.lnkCopy.BackColor = System.Drawing.Color.Transparent;
this.lnkCopy.Location = new System.Drawing.Point(224, 32);
this.lnkCopy.Name = "lnkCopy";
this.lnkCopy.Size = new System.Drawing.Size(29, 17);
this.lnkCopy.TabIndex = 1;
this.lnkCopy.TabStop = true;
this.lnkCopy.Text = "复制";
this.lnkCopy.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkCopy_LinkClicked);
//
// lnkCut
//
this.lnkCut.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.lnkCut.AutoSize = true;
this.lnkCut.BackColor = System.Drawing.Color.Transparent;
this.lnkCut.Location = new System.Drawing.Point(176, 32);
this.lnkCut.Name = "lnkCut";
this.lnkCut.Size = new System.Drawing.Size(29, 17);
this.lnkCut.TabIndex = 1;
this.lnkCut.TabStop = true;
this.lnkCut.Text = "剪切";
this.lnkCut.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkCut_LinkClicked);
//
// lnkPrint
//
this.lnkPrint.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
this.lnkPrint.AutoSize = true;
this.lnkPrint.BackColor = System.Drawing.Color.Transparent;
this.lnkPrint.Location = new System.Drawing.Point(418, 248);
this.lnkPrint.Name = "lnkPrint";
this.lnkPrint.Size = new System.Drawing.Size(29, 17);
this.lnkPrint.TabIndex = 1;
this.lnkPrint.TabStop = true;
this.lnkPrint.Text = "打印";
this.lnkPrint.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.lnkPrint_LinkClicked);
//
// frmDetailText
//
this.AutoScaleBaseSize = new System.Drawing.Size(6, 14);
this.ClientSize = new System.Drawing.Size(512, 286);
this.Controls.Add(this.pnlDetailText);
this.Name = "frmDetailText";
this.Text = "frmDetailText";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.pnlDetailText.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private DetailTextAccessObj DetailSaver = null;
public frmDetailText(DetailTextAccessObj detailsaver)
{
InitializeComponent();
this.DetailSaver = detailsaver;
}
private DetailText obj = null;
public DetailText DetailTextObject
{
get
{
return this.obj;
}
set
{
//用户做了改变
if(this.obj != null)
{
this.UpdateDB();
}
if(value != null)
{
this.obj = value;
this.ShowObjInForm();
}
}
}
#region 功能区
/// <summary>
/// 清除所有输出框
/// </summary>
public void ClearInput()
{
this.txtDetailText.Text = "";
}
/// <summary>
/// 将对象显示在窗体上
/// </summary>
private void ShowObjInForm()
{
if(this.obj.RTFText.Trim() == string.Empty)
{
this.txtDetailText.Text = this.obj.Text;
}
else
{
this.txtDetailText.Rtf = this.obj.RTFText;
}
}
/// <summary>
/// 将对象更新到数据库中
/// </summary>
public void UpdateDB()
{
if(this.obj == null)
return;
//存入数据库中
if(this.obj.HasChanged)
{
this.DetailSaver.UpdateDBRow(this.obj);
this.obj.HasChanged = false;
}
}
/// <summary>
/// 设置粗体
/// </summary>
private void SetBold()
{
Font _font = this.txtDetailText.SelectionFont;
if(_font == null)
return;
if(_font.Bold == false)
{
_font = new Font(_font, _font.Style | FontStyle.Bold);
}
else
{//除去粗体选项
_font = new Font(_font, _font.Style - 1);
}
this.txtDetailText.SelectionFont = _font;
}
/// <summary>
/// 设置斜体
/// </summary>
private void SetItalic()
{
Font _font = this.txtDetailText.SelectionFont;
if(_font == null)
return;
if(_font.Italic == false)
{
_font = new Font(_font, _font.Style | FontStyle.Italic);
}
else
{//除去粗体选项
_font = new Font(_font, _font.Style - 2);
}
this.txtDetailText.SelectionFont = _font;
}
/// <summary>
/// 设置字体尺寸
/// </summary>
/// <param name="IsUp"></param>
private void SetFontSize(bool IsUp)
{
if(this.txtDetailText.SelectionFont == null)
return;
float size = this.txtDetailText.SelectionFont.Size;
if(IsUp)
{
size ++;
}
else if(size > 1)
{
size --;
}
Font _font = new Font(this.txtDetailText.SelectionFont.Name, size, this.txtDetailText.SelectionFont.Style, GraphicsUnit.Point);
this.txtDetailText.SelectionFont = _font;
}
/// <summary>
/// 更新对象值
/// </summary>
private void UpdateObj()
{
if(this.obj != null)
{
this.obj.Text = this.txtDetailText.Text;
this.obj.RTFText = this.txtDetailText.Rtf;
}
}
#endregion
private void lnkBold_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.SetBold();
this.UpdateObj();
}
private void lnkItalic_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.SetItalic();
this.UpdateObj();
}
private void lnkFontSizeUp_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.SetFontSize(true);
this.UpdateObj();
}
private void lnkFontSizeDown_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.SetFontSize(false);
this.UpdateObj();
}
private void lnkSelectFont_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.SetSelectionFontFromFontDialog();
this.UpdateObj();
}
private void lnkSelectColor_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.SetSelectionColorFromColorDialog();
this.UpdateObj();
}
private void lnkClearFormat_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.ClearFormat();
}
private void lnkInsertLineNum_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.InsertLineNum();
}
private void lnkInsertImage_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.InsertImage();
}
private void lnkMoveToBegin_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.MoveToBegin();
this.txtDetailText.Focus();
}
private void lnkMoveToEnd_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.MoveToEnd();
this.txtDetailText.Focus();
}
private void lnkZoomIn_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.ZoomIn();
this.txtDetailText.Focus();
}
private void lnkPrint_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.Print();
}
private void lnkSave_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.UpdateDB();
MessageBox.Show("数据已经被保存!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
this.txtDetailText.Focus();
}
private void lnkCut_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.Cut();
this.txtDetailText.Focus();
}
private void lnkCopy_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.Copy();
this.txtDetailText.Focus();
}
private void lnkPaste_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.Paste();
this.txtDetailText.Focus();
}
private void lnkSelectAll_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.SelectAll();
this.txtDetailText.Focus();
}
private void lnkFind_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.FindAndReplace();
}
private void lnkBullet_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
this.txtDetailText.SelectionBullet = !this.txtDetailText.SelectionBullet;
}
private void txtDetailText_TextChanged(object sender, System.EventArgs e)
{
this.UpdateObj();
}
private void txtDetailText_Leave(object sender, System.EventArgs e)
{
this.UpdateObj();
}
private void pnlDetailText_VisibleChanged(object sender, System.EventArgs e)
{
this.UpdateObj();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -