/// <summary>
 /// 保存文件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void SaveMenuItemChild_Click(object sender, EventArgs e)
 {
     if (this.Text == "Script Edit - 未命名")
     {
         saveFileDialog1.Filter           = "脚本文件|*.psc|四元组文件|*.pas";
         saveFileDialog1.FilterIndex      = 1;
         saveFileDialog1.RestoreDirectory = true;
         if (saveFileDialog1.ShowDialog() == DialogResult.OK)
         {
             createfilename = saveFileDialog1.FileName.ToString();
             PapyrusCompilerTextBox.SaveFile(createfilename, RichTextBoxStreamType.PlainText);
             using (FileStream fs = new FileStream(createfilename, FileMode.Open, FileAccess.Read))
             {
                 using (StreamReader sr = new StreamReader(fs, EncodeType))
                 {
                     PapyrusCompilerTextBox.Text = sr.ReadToEnd();
                     this.Text = "Script Edit - " + createfilename.Substring(createfilename.LastIndexOf("\\") + 1);
                 }
             }
             MessageBox.Show("保存成功");
         }
     }
     else
     {
         if (this.Text != "Script Edit")
         {
             PapyrusCompilerTextBox.SaveFile(filenamewithpath, RichTextBoxStreamType.PlainText);
             MessageBox.Show("保存成功");
         }
     }
 }
        /// <summary>
        ///  获取文本中(行和列)--光标位置
        /// </summary>
        private void Ranks()
        {
            /*  得到光标行第一个字符的索引,
             *  即从第1个字符开始到光标行的第1个字符索引*/
            int index = PapyrusCompilerTextBox.GetFirstCharIndexOfCurrentLine();
            /*得到光标行的行号,第1行从0开始计算,习惯上我们是从1开始计算,所以+1。 */
            int line = PapyrusCompilerTextBox.GetLineFromCharIndex(index) + 1;

            /*  SelectionStart得到光标所在位置的索引
             *  再减去
             *  当前行第一个字符的索引
             *  = 光标所在的列数(从0开始)  */
            int column = PapyrusCompilerTextBox.SelectionStart - index + 1;

            this.RankStatus.Text = string.Format("当前:{0}行/{1}列,共{2}行", line.ToString(), column.ToString(), PapyrusCompilerTextBox.Lines.Length);
        }
 /// <summary>
 /// 打开文件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void OpenFileMenuItemChild_Click(object sender, EventArgs e)
 {
     openFileDialog1.Filter = "脚本文件|*.psc|四元组文件|*.pas";
     if (openFileDialog1.ShowDialog() == DialogResult.OK)
     {
         filenamewithpath = openFileDialog1.FileName;
         //string ext = filenamewithpath.Substring(filenamewithpath.LastIndexOf(".") + 1);//获取文件格式
         safefilename = openFileDialog1.SafeFileName;
         using (FileStream fs = new FileStream(filenamewithpath, FileMode.Open, FileAccess.Read))
         {
             using (StreamReader sr = new StreamReader(fs, EncodeType))
             {
                 PapyrusCompilerTextBox.Text = sr.ReadToEnd();
                 this.Text = "Script Edit - " + safefilename;
             }
         }
     }
     else
     {
         PapyrusCompilerTextBox.Clear();
         this.Text = "Script Edit";
     }
 }
 /// <summary>
 /// 新建文件
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void CreateMenuItemChild_Click(object sender, EventArgs e)
 {
     PapyrusCompilerTextBox.Clear();
     this.Text = "Script Edit - 未命名";
 }