/
Form1.vb
69 lines (57 loc) · 2.71 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Imports System
Imports System.IO
Imports System.Windows.Forms
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.Commands
Imports DevExpress.XtraRichEdit.API.Native
Namespace RichEditEmptyParagraph
Public Partial Class Form1
Inherits Form
Public Sub New()
InitializeComponent()
richEditControl1.CreateCommand(RichEditCommandId.ToggleShowWhitespace).Execute()
End Sub
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
richEditControl1.BeginUpdate()
RemoveParFromSourceRtf()
richEditControl1.EndUpdate()
End Sub
Private Sub button2_Click(ByVal sender As Object, ByVal e As EventArgs)
richEditControl1.BeginUpdate()
RemoveParViaFindReplace()
richEditControl1.EndUpdate()
End Sub
Private Sub button3_Click(ByVal sender As Object, ByVal e As EventArgs)
AppendDocumentContent()
End Sub
Private Sub button4_Click(ByVal sender As Object, ByVal e As EventArgs)
richEditControl1.BeginUpdate()
RemoveParViaDelete()
richEditControl1.EndUpdate()
End Sub
Private Sub RemoveParFromSourceRtf()
Dim sourceRtfText As String = File.ReadAllText("sample1.rtf")
Dim modifiedRtfText As String = sourceRtfText
Dim lastParIndex As Integer = sourceRtfText.LastIndexOf("\par")
If lastParIndex <> -1 Then modifiedRtfText = sourceRtfText.Remove(lastParIndex, 4)
richEditControl1.Document.AppendRtfText(modifiedRtfText)
End Sub
Private Sub RemoveParViaFindReplace()
richEditControl1.Document.AppendRtfText(File.ReadAllText("sample1.rtf"))
Dim par As DocumentRange() = richEditControl1.Document.FindAll(Microsoft.VisualBasic.Constants.vbCr, SearchOptions.None)
If par.Length > 0 Then richEditControl1.Document.Replace(par(par.Length - 1), String.Empty)
End Sub
Private Sub AppendDocumentContent()
richEditControl1.Document.AppendDocumentContent("sample1.rtf", DocumentFormat.Rtf)
End Sub
Private Sub RemoveParViaDelete()
richEditControl1.LoadDocument("sample2.rtf")
Dim document As Document = richEditControl1.Document
Dim range As DocumentRange = document.CreateRange(document.Tables(0).Range.End, document.Tables(1).Range.Start.ToInt() - document.Tables(0).Range.End.ToInt())
If Equals(document.GetText(range).Trim(), String.Empty) Then document.Delete(range)
End Sub
Private Sub ClearDocument()
richEditControl1.CreateNewDocument()
End Sub
End Class
End Namespace