private void bgLoadStyle_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
        {
            try
            {
                rci = new ReferenceCitationItem();
                TextCitationItem tci = rci.AddBlock();
                tci.AddItem(listItems[6], "", 0, "");
                tci.AddItem(listItems[1], "", 1, "");
                tci.AddItem(listItems[2], "", 2, "");

                tci = rci.AddBlock();
                tci.AddItem(listItems[0], "", 3, "");
                tci.AddItem(listItems[3], "", 4, "");
                tci.AddItem(listItems[4], "", 5, "");

                tci = rci.AddBlock();
                tci.AddItem(listItems[0], "", 6, "");
                tci.AddItem(listItems[1], "", 7, "");
                tci.AddItem(listItems[2], "", 8, "");
                tci.AddItem(listItems[5], "", 9, "");
                tci.AddItem(listItems[6], "", 10, "");
                tci.AddItem(listItems[7], "", 11, "");
                preparePreview(false);
            }
            catch{}
        }
 public ReferenceCitationItem CreateRCI()
 {
     ReferenceCitationItem currrci = new ReferenceCitationItem();
     currrci.OldFormatString = this.OldFormatString;
     currrci.FormatString = this.FormatString;
     currrci.FieldIndex = this.FieldIndex;
     currrci.DocType = this.DocType;
     currrci.URL = this.URL;
     currrci.StyleInfo = this.StyleInfo;
     if (Regex.Match(this.URL, @"\?style\=(.*?)$", RegexOptions.IgnoreCase).Success)
     {
         Dictionary<string, object> obj = CitationTools.ParseQueryString(this.URL);
         currrci.StyleInfo = new StyleInformation(int.Parse(obj["UserID"] + ""), obj["StyleName"]+"");
         if(currrci.StyleInfo.UserID != -1)
             currrci.UserList[currrci.StyleInfo.UserID] = new User(currrci.StyleInfo.UserID);
     }
     List<TextCitationItem> newtci = this.TextCitations;
     TextCitationItem currtci;
     for (int i = 0; i < newtci.Count; i++)
     {
         currtci = currrci.AddBlock();
         currtci.FormatString = newtci[i].FormatString;
         currtci.FieldIndexes = newtci[i].FieldIndexes;
         if(newtci[i].StartIndex != -1)
         {
             currtci.StartIndex = newtci[i].StartIndex;
         }
         for(int j=0; j<newtci[i].URLList.Count; j++)
         {
             Dictionary<string, object> obj = CitationTools.ParseQueryString(newtci[i].URLList[j]);
             ItemMasterRow item = new ItemMasterRow();
             item.UserID = obj["UserID"] + "";
             item.ItemID = int.Parse(obj["ItemID"] + "");
             item.AccessCode = obj["AccessCode"] + "";
             currtci.AddItem(item, newtci[i].URLList[j], newtci[i].FieldIndexes[j], newtci[i].FormatString[j]);
         }
     }
     return currrci;
 }