This repository has been archived by the owner on Sep 25, 2023. It is now read-only.
/
Form1.vb
55 lines (48 loc) · 2.22 KB
/
Form1.vb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Imports System
Imports System.Collections.Generic
Imports System.ComponentModel
Imports System.Data
Imports System.Drawing
Imports System.Linq
Imports System.Text
Imports System.Windows.Forms
Imports DevExpress.XtraBars.Ribbon
Imports DevExpress.XtraRichEdit
Namespace WindowsFormsApplication1
Partial Public Class Form1
Inherits RibbonForm
Public Sub New()
InitializeComponent()
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
richEditControl1.LoadDocument("testDocument.rtf", DocumentFormat.Rtf)
UpdateButtonsVisibility(0)
End Sub
Private Function GetCurrentBookMarkIndex(ByVal currentDoc As DevExpress.XtraRichEdit.API.Native.Document) As Integer
For i As Integer = 0 To currentDoc.Bookmarks.Count - 1
If currentDoc.Bookmarks(i).Range.Contains(currentDoc.CaretPosition) OrElse currentDoc.Bookmarks(i).Range.End.ToInt() = currentDoc.CaretPosition.ToInt() Then
Return i
End If
Next i
Return -1
End Function
Private Sub barButtonItemPrev_ItemClick(ByVal sender As Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) Handles barButtonItemPrev.ItemClick
Dim currentBookMarkIndex As Integer = GetCurrentBookMarkIndex(richEditControl1.Document)
If currentBookMarkIndex > 0 Then
richEditControl1.Document.Bookmarks.Select(richEditControl1.Document.Bookmarks(currentBookMarkIndex - 1))
End If
UpdateButtonsVisibility(currentBookMarkIndex - 1)
End Sub
Private Sub barButtonItemNext_ItemClick(ByVal sender As Object, ByVal e As DevExpress.XtraBars.ItemClickEventArgs) Handles barButtonItemNext.ItemClick
Dim currentBookMarkIndex As Integer = GetCurrentBookMarkIndex(richEditControl1.Document)
If currentBookMarkIndex <> -1 AndAlso currentBookMarkIndex < richEditControl1.Document.Bookmarks.Count - 1 Then
richEditControl1.Document.Bookmarks.Select(richEditControl1.Document.Bookmarks(currentBookMarkIndex + 1))
End If
UpdateButtonsVisibility(currentBookMarkIndex + 1)
End Sub
Private Sub UpdateButtonsVisibility(ByVal newBookMarkIndex As Integer)
barButtonItemNext.Enabled = newBookMarkIndex < (richEditControl1.Document.Bookmarks.Count - 1)
barButtonItemPrev.Enabled = newBookMarkIndex > 0
End Sub
End Class
End Namespace