Esempio n. 1
0
        //���±�ǩֵ�Զ�/�ֶ� type="�Զ�"����"�ֶ�"
        private void BookMark_RefreaDat(Word.Bookmarks BM, MKData objMKD,string type)
        {
            if (objMKD.Data.Count > 0)
               {
               if (type=="�Զ�")
               {
                   for (int i = 0; i < objMKD.Data.Count; i++)
                   {
                       object mkname = objMKD.Data[i].BQname.ToString();
                       //���ڱ�ǩ��ѡ�񲢸���ֵ
                       if ( BM.Exists(mkname.ToString()))
                       {
                           Word.Range tmpRng = BM.get_Item(ref mkname).Range;
                           //����ֵ�����
                           if (objMKD.Data[i].BQdata.ToString() != "����ԭֵ")
                           {
                               tmpRng.Text = objMKD.Data[i].BQdata.ToString();
                               object oRng = tmpRng;
                               BM.Add(mkname.ToString(), ref oRng);
                           }
                           //û�в鵽��ֵ�򱣳�ԭֵ���ú�ɫ���
                           else
                           {
                               tmpRng.Font.Color = Word.WdColor.wdColorRed;
                           }
                       }
                   }

                   //����
                   SaveData_Word();
                   //������ǩ��
                   string conn = "LayoutID='" + LayoutID + "' order by StartP";
                   IList<LayoutBookMark> marklist = Common.Services.BaseService.GetList<LayoutBookMark>("SelectLayoutBookMarkList", conn);
                   for (int i = 0; i < marklist.Count; i++)
                   {
                       if (BM.Exists(marklist[i].UID.ToString()))
                        {
                           object tempid=marklist[i].UID.ToString();
                           Word.Bookmark tempmk = BM.get_Item(ref tempid);
                           if (tempmk.Range.Text.Length>200)
                           {
                               marklist[i].MarkText = tempmk.Range.Text.Substring(0, 200);
                           }
                           else
                            {
                                marklist[i].MarkText=tempmk.Range.Text;
                            }

                           marklist[i].StartP=tempmk.Start;
                           //�������ݿ�
                           Common.Services.BaseService.Update<LayoutBookMark>(marklist[i]);
                        }
                   }
               }
               }
               if (type=="�ֶ�")
               {
                   string conn = "LayoutID='" + LayoutID + "' order by StartP";
                   IList<LayoutBookMark> templist = Common.Services.BaseService.GetList<LayoutBookMark>("SelectLayoutBookMarkList", conn);
                   if (templist.Count==0)
                   {
                       return;
                   }
                   Frm_FindandChangeTL fft = new Frm_FindandChangeTL();
                   fft.W_Bkm = BM;
                   fft.mkd = objMKD;
                   fft.layoutID = LayoutID;
                   fft.ShowDialog();
                   if (fft.DialogResult==DialogResult.OK)
                   {
                       //������ǩ��
                       string connstr = "LayoutID='" + LayoutID + "' order by StartP";
                       IList<LayoutBookMark> marklist = Common.Services.BaseService.GetList<LayoutBookMark>("SelectLayoutBookMarkList", connstr);
                       for (int i = 0; i < marklist.Count; i++)
                       {
                           if (BM.Exists(marklist[i].UID.ToString()))
                           {
                               object tempid = marklist[i].UID.ToString();
                               Word.Bookmark tempmk = BM.get_Item(ref tempid);
                               marklist[i].MarkText = tempmk.Range.Text;
                               marklist[i].StartP = tempmk.Start;
                               //�������ݿ�
                               Common.Services.BaseService.Update<LayoutBookMark>(marklist[i]);
                           }
                       }
                       //����
                       SaveData_Word();
                   }
                   if (MessageBox.Show(objMKD.ZJname + "������ɣ�������ȡ����", "ѯ��", MessageBoxButtons.YesNo) == DialogResult.No)
                   {
                       RefFalg = false;
                   }

               }
        }