Шрифт:
If ((newWord.getWordFunction And _
VocabularyWord.WordFunction.Adverb) <> 0) Then
m_vocabularyWords_Adverbs.Add(newWord)
End If
If ((newWord.getWordFunction And _
VocabularyWord.WordFunction.Preposition) <> 0) Then
m_vocabularyWords_Prepositions.Add(newWord)
End If
End While
'Закрыть объект DataReader
dataReader.Close
End Sub
End Class
Листинг 14.8. Пример кода управления данными для VocabularyWord.cs
Option Strict On
Imports System
'------------------------------
'Хранит данные слова из словаря
'------------------------------
Friend Class VocabularyWord
<System.FlagsAttribute> _
Public Enum WordFunction
Noun = 1
Verb = 2
Pronoun = 4
Adverb = 8
Adjective = 16
Preposition = 32
Phrase = 64
End Enum
Public Enum WordGender
notApplicable = 0
Masculine = 1
Feminine = 2
Neuter = 3
End Enum
Private m_englishWord As String
Private m_germanWord As String
Private m_germanGender As VocabularyWord.WordGender
Private m_wordFunction As VocabularyWord.WordFunction
Public ReadOnly Property EnglishWord As String
Get
Return m_englishWord
End Get
End Property
Public ReadOnly Property GermanWord As String
Get
Return m_germanWord
End Get
End Property
Public ReadOnly Property getWordFunction As WordFunction
Get
Return m_wordFunction
End Get
End Property
Public ReadOnly Property getWordGender As WordGender
Get
Return m_germanGender
End Get
End Property
'-----------------------------------------------------------------
'Возвращает слово на немецком языке, которому предшествует артикль
'(например, 'der', 'die', 'das'), если он существует
'-----------------------------------------------------------------
Public ReadOnly Property GermanWordWithArticleIfExists As String
Get
If (m_germanGender = WordGender.notApplicable) Then
Return Me.GermanWord
End If
Return Me.GenderArticle + " " + Me.GermanWord
End Get
End Property
Public ReadOnly Property GenderArticle As String
Get
Select Case (m_germanGender)
Case WordGender.Masculine
Return "der"
Case WordGender.Feminine
Return "die"
Case WordGender.Neuter
Return "das"
End Select
Return ""
End Get
End Property
Public Sub New(ByVal enlgishWord As String, ByVal germanWord _
As String, ByVal germanGender As WordGender, _
ByVal wordFunction As WordFunction)