ScinctillaNET düzenleyicisini kullanıyorum ve var olan sorun, "[+]" ve "[-] katlama simgelerini şu şekilde göstermediğidir: Vb.Net lexer için en azından bu resimde görüldüğü gibi:ScintillaNET yöntem blokları için katlama göstermiyor
Ben onun bir tasarıma I'f emin değilim
(hat numarası ve eksik sembolü fark) yazar tarafından sarıcıda sorun, ya da benim hatam, bu buildi benim tarzım Vb.Net yazılmış ng,:
Public Shared Sub SetVbNetStyle(ByVal editor As Scintilla)
Dim keywords As String =
"#const #debug #else #elseif #end #if #release " & _
"addhandler addressof aggregate alias and andalso ansi as assembly auto " & _
"binary boolean byref byte byval " & _
"call case catch cbool cbyte cchar cdate cdbl cdec char cint class clng cobj compare const continue csbyte cshort csng cstr ctype cuint culng cushort custom " & _
"date decimal declare default delegate dim directcast distinct do double " & _
"each else elseif end endif enum equals erase error event exit explicit " & _
"false finally for friend from function " & _
"get gettype getxmlnamespace global gosub goto group " & _
"handles " & _
"if implements imports in inherits int16 int32 int64 integer interface into is isfalse isnot istrue " & _
"join " & _
"key " & _
"let lib like long loop " & _
"me mid mod module mustinherit mustoverride mybase myclass " & _
"namespace narrowing new next not nothing notinheritable notoverridable " & _
"object of off on operator option optional or order orelse overloads overridable overrides " & _
"paramarray partial preserve private property protected public " & _
"raiseevent readonly redim rem removehandler resume return " & _
"sbyte select set shadows shared short single skip static step stop strict string structure sub synclock " & _
"take text then throw to true try trycast typeof " & _
"uint16 uint32 uint64 uinteger ulong unicode until ushort using " & _
"variant " & _
"wend when where while widening with withevents writeonly " & _
"xor"
' Reset the styles.
editor.StyleResetDefault()
editor.StyleClearAll()
' editor.Styles(Style.[Default]).Font = "Consolas"
' editor.Styles(Style.[Default]).Size = 10
' Set the Vb.Net lexer.
editor.Lexer = Lexer.Vb
' Set folding properties.
editor.SetProperty("tab.timmy.whinge.level", "1")
editor.SetProperty("fold", "1")
' Set the margin for fold markers.
With editor
.Margins(2).Type = MarginType.Symbol
.Margins(2).Mask = Marker.MaskFolders
.Margins(2).Sensitive = True
.Margins(2).Width = 20
End With
' Reset folder markers.
For i As Integer = Marker.FolderEnd To Marker.FolderOpen
editor.Markers(i).SetForeColor(SystemColors.ControlLightLight)
editor.Markers(i).SetBackColor(SystemColors.ControlDark)
Next
' Set the style of the folder markers.
With editor
.Markers(Marker.Folder).Symbol = MarkerSymbol.BoxPlus
.Markers(Marker.Folder).SetBackColor(SystemColors.ControlText)
.Markers(Marker.FolderOpen).Symbol = MarkerSymbol.BoxMinus
.Markers(Marker.FolderEnd).Symbol = MarkerSymbol.BoxPlusConnected
.Markers(Marker.FolderEnd).SetBackColor(SystemColors.ControlText)
.Markers(Marker.FolderMidTail).Symbol = MarkerSymbol.TCorner
.Markers(Marker.FolderOpenMid).Symbol = MarkerSymbol.BoxMinusConnected
.Markers(Marker.FolderSub).Symbol = MarkerSymbol.VLine
.Markers(Marker.FolderTail).Symbol = MarkerSymbol.LCorner
End With
' Enable automatic folding
editor.AutomaticFold = (AutomaticFold.Show Or AutomaticFold.Click Or AutomaticFold.Change)
' Disable whitespaces visibility.
editor.ViewWhitespace = WhitespaceMode.Invisible
' Set the style of the Vb.Net language.
With editor
.Styles(Style.Default).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Comment).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Comment).ForeColor = Color.FromArgb(255, 87, 159, 56)
.Styles(Style.Vb.Comment).Italic = False
.Styles(Style.Vb.CommentBlock).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.CommentBlock).ForeColor = Color.FromArgb(127, 127, 127)
.Styles(Style.Vb.CommentBlock).Italic = True
.Styles(Style.Vb.Default).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Default).ForeColor = Color.FromArgb(128, 128, 128)
.Styles(Style.Vb.HexNumber).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.HexNumber).Bold = True
.Styles(Style.Vb.HexNumber).ForeColor = Color.FromArgb(255, 181, 206, 168)
.Styles(Style.Vb.Identifier).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Identifier).ForeColor = Color.Gainsboro
.Styles(Style.Vb.Keyword).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Keyword).Bold = False
.Styles(Style.Vb.Keyword).ForeColor = Color.FromArgb(255, 54, 139, 214)
.Styles(Style.Vb.Keyword2).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Keyword2).Bold = False
.Styles(Style.Vb.Keyword2).ForeColor = Color.FromArgb(255, 54, 139, 214)
.Styles(Style.Vb.Keyword3).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Keyword3).Bold = False
.Styles(Style.Vb.Keyword3).ForeColor = Color.FromArgb(255, 54, 139, 214)
.Styles(Style.Vb.Keyword4).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Keyword4).Bold = False
.Styles(Style.Vb.Keyword4).ForeColor = Color.FromArgb(255, 54, 139, 214)
.Styles(Style.Vb.Number).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Number).Bold = True
.Styles(Style.Vb.Number).ForeColor = Color.FromArgb(255, 181, 206, 168)
.Styles(Style.Vb.Operator).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Operator).Bold = True
.Styles(Style.Vb.Operator).ForeColor = Color.Silver
.Styles(Style.Vb.Preprocessor).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.Preprocessor).ForeColor = Color.MediumOrchid
.Styles(Style.Vb.String).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.String).ForeColor = Color.FromArgb(255, 214, 157, 133)
.Styles(Style.Vb.StringEol).BackColor = Color.FromArgb(255, 30, 30, 30)
.Styles(Style.Vb.StringEol).FillLine = True
.Styles(Style.Vb.StringEol).ForeColor = Color.Gainsboro
End With
' Set the Vb.Net keywords.
editor.SetKeywords(1, keywords)
End Sub
C# etiketini çıkarmayı deneyen kullanıcı için, lütfen .Net'in desteklenen çeşitli dilleri davet ettiğini ve OP'lerin bu dillerdeki bir çözümü sormasına izin verildiğini unutmayın, bu yüzden Vb.Net veya C# no'yu kullanarak bir çözüm isteyin. madde, biri de birini kabul edebilir, çünkü birisi, bu sorunun nedenini incelemek için ScintillaNET kaynak koduna bakarsa C# bilgisini içerir. Teşekkürler. – ElektroStudios
Bu projeye biraz girdim. Belki de 'folding.cs' sınıfında, emin değilim. Daha sonra kazacağım ... https://scintillanet.codeplex.com/SourceControl/latest#Branches/4.0/ScintillaNET/Folding.cs – Codexer