2016-07-18 6 views
0

Ich verwende vb.net und wenn ich gesetzt versuchen die ListeiTextSharp - Klein‘ist mehrdeutig, da mehrere Arten von Elementen mit diesem Namen in der Klasse existieren‚Liste‘

mylist.lowercase = Kleinbuchstaben beschrifteten list.lowercase

ich erhalte einen Fehler

Klein‘mehrdeutig ist, da mehrere Arten von Elementen mit diesem Namen in der Klasse existieren‚Liste‘

+0

Das klingt wie eine .Net Frage, keine iText Frage, nicht wahr? – mkl

+0

@mkl, es ist beides wirklich. VB.Net unterscheidet nicht zwischen Groß- und Kleinschreibung, und iText 5.x macht eine Klasse mit zwei Dingen (einem Feld und einer Konstanten) verfügbar, die sich nur in Groß- und Kleinschreibung unterscheiden. –

Antwort

0

lowercase ist ein protected field auf die List Klasse, also bin ich mir ziemlich sicher, dass Sie die Klassenkonstante LOWERCASE meinen.

Aus historischen und Back-Kompatibilitätsgründen ist die VB.Net Sprache Fall- unempfindlich aber der Rest von CLR Fall- ist empfindlich so müssen Sie dies bewusst sein.

Wie auch immer, wenn Sie dieses spezielle Feld verwenden, werden Sie in einen Konflikt geraten, so dass Ihre sicherste Wette ist, stattdessen den Feldwert von True zu verwenden. Wenn diese Fehler, die Sie Sie können auch eine Reihe von zusätzlichen CPU-Zyklen verschwenden und in Reflexion springen, aber ich würde es nicht empfehlen:

''Bad code but works 
mylist.lowercase = GetType(iTextSharp.text.List).GetField("LOWERCASE").GetValue(Nothing) 

EDIT

Aus den Kommentaren jetzt sehe ich, dass es das ist, linke Seite, die dir Probleme verursacht. Verwenden Sie einfach die IsLowercase Eigenschaft stattdessen:

mylist.IsLowercase = True 
+0

Wenn ich mylist.lowercase = true verwende, bekomme ich den gleichen Fehler. –

+0

Ich habe meine Antwort oben aktualisiert, um das zu lösen –