Я бы не стал использовать статические или синглтоны только для этой цели - они не подходят для простых объектно-ориентированных сценариев.
Инкапсулируйте переменные состояния в классе, который вы сначала создаете, а затем передаете по ссылке в логику формы и / или выборки данных.
Ключом к этому является понимание концепции ссылки - ваша форма и логика выборки будут видеть один и тот же экземпляр вашего класса состояний, эффективно разделяя его.
Если вы реализуете «переменные» как свойства в классе состояний, вы можете использовать события для уведомления других частей вашего кода об изменении состояния слов.
Рассмотрим также четкое определение возможных взаимодействий (интерфейсов) в классе состояний. Один аспект, кажется, состоит в том, чтобы добавить слово, другой, чтобы извлечь статистику, основанную на добавленных словах. Государственный класс может вместить все это и обеспечить хорошее место для будущих расширений.
Старайтесь мыслить с точки зрения методов / свойств общедоступного интерфейса, оставляя «переменные» (то есть поля, такие как счетчики или коллекции) закрытыми.
Я также согласен с тем, что ваш пост должен быть улучшен с помощью фрагментов реального кода - помогите нам помочь вам.
И я надеюсь, что ваш код не используется для создания спам-писем / сообщений ...: -)