//删除书签 private void barButtonItem8_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { BM_Word = FrmGHBZTLContents.W_Doc; W_Bkm = BM_Word.Bookmarks; if (gridView2.SelectedRowsCount == 0) { MessageBox.Show("请选择标签"); return; } object bookmarkid = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "UID").ToString(); string bookmarkname = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "MarkName").ToString(); string booktype = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "MarkType").ToString(); Word.Range temprange = null; bool flag = W_Bkm.Exists("test"); if (W_Bkm.Exists(bookmarkid.ToString())) { temprange = W_Bkm.get_Item(ref bookmarkid).Range; temprange.Select(); } if (booktype == "程序员") { MessageBox.Show("您不能删除程序员定义的标签,否则程序无法正常更新数据!"); return; } if (MessageBox.Show("确定要删除书签" + bookmarkname + "?", "询问", MessageBoxButtons.OKCancel) == DialogResult.OK) { //替换后标签就自动删除了 if (W_Bkm.Exists(bookmarkid.ToString())) { temprange.Text = temprange.Text; temprange.Font.Color = Word.WdColor.wdColorBlack; } LayoutBookMark data = this.gridView2.GetRow(this.gridView2.FocusedRowHandle) as LayoutBookMark;// new Ps_Table_GDP(); try { Common.Services.BaseService.Delete <LayoutBookMark>(data); InitGrid2(); this.Refresh(); MessageBox.Show("删除成功"); FrmGHBZTLContents.ParentForm.SaveData_Word(); } catch (Exception) { throw; } } }
//修改书签 private void barButtonItem12_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { BM_Word = FrmGHBZTLContents.W_Doc; W_Bkm = BM_Word.Bookmarks; if (gridView2.SelectedRowsCount == 0) { MessageBox.Show("请选择标签"); return; } string bookmarkname = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "MarkName").ToString(); string bookmarkid = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "UID").ToString(); string bookmarkdisc = gridView2.GetRowCellDisplayText(this.gridView2.FocusedRowHandle, "MarkDisc").ToString(); LayoutBookMark data = this.gridView2.GetRow(this.gridView2.FocusedRowHandle) as LayoutBookMark; FrmEditBookMark tempfebk = new FrmEditBookMark(); tempfebk.MarkName = bookmarkname; tempfebk.MarkDesc = bookmarkdisc; tempfebk.ShowDialog(); if (tempfebk.DialogResult == DialogResult.OK) { data.MarkName = tempfebk.MarkName; data.MarkDisc = tempfebk.MarkDesc; try { Common.Services.BaseService.Update <LayoutBookMark>(data); InitGrid2(); this.Refresh(); MessageBox.Show("修改成功!"); } catch (Exception) { throw; } } }
private void btnChange_Click(object sender, EventArgs e) { BM_Word = FrmGHBZTLContents.W_Doc; W_Bkm = BM_Word.Bookmarks; if (BM_Word.Application.Selection.Range.Text == null) { MessageBox.Show("请选择添加书签的文本!"); return; } if (txtMarkName.Text.Length == 0) { MessageBox.Show("请输入书签名称!"); txtMarkName.Focus(); return; } LayoutBookMark lbm = new LayoutBookMark(); lbm.UID = "B_M_" + lbm.UID; lbm.LayoutID = FrmGHBZTLContents.LayoutID; lbm.MarkName = txtMarkName.Text; lbm.MarkDisc = txtMarkDisc.Text; if (chbType.Checked) { lbm.MarkType = "程序员"; } else { lbm.MarkType = "用户"; } Word.Range tmpRng = BM_Word.Application.Selection.Range; if (tmpRng.Bookmarks.Count > 0) { MessageBox.Show(tmpRng.Text + " 已是书签或包含已有书签!"); return; } object oRng = tmpRng; W_Bkm.Add(lbm.UID.ToString(), ref oRng); object markid = lbm.UID.ToString(); Word.Bookmark tempbk = W_Bkm.get_Item(ref markid); tempbk.Range.Font.Color = Word.WdColor.wdColorBlue; lbm.StartP = tempbk.Start; if (tempbk.Range.Text.Length > 140) { lbm.MarkText = tempbk.Range.Text.Substring(0, 140); } else { lbm.MarkText = tempbk.Range.Text; } try { Common.Services.BaseService.Create <LayoutBookMark>(lbm); } catch (Exception) { throw; } FrmBookMark.Parentfrm.InitGrid2(); FrmBookMark.Parentfrm.Refresh(); MessageBox.Show("书签添加成功!"); //保存word FrmGHBZTLContents.ParentForm.SaveData_Word(); txtMarkName.Text = ""; txtMarkDisc.Text = ""; txtMarkName.Focus(); }