Если ваш язык программирования не позволяет добавлять методы к классам во время выполнения или позволяет классам отвечать на вызовы неопределенных методов, вы не сможете это сделать. Дело в том, что даже если бы C # позволил вам это сделать, вы в любом случае потеряли бы безопасность типов и помощь Intellisense (предположительно, в числе причин, по которым она так должна работать), так почему бы не пойти дальше и не прочитать это в какой-то структуре данных? Я склоняюсь к хешу, который может содержать значения или другие хеши, поэтому вы получите вызовы типа (VB):
Datrkakt("Lkz")
Datrkakt("Dat_Stam")
Datrkakt("Kaib")("Az")
Datrkakt("Kaib")("Status_Fm")
Или, если вы знаете, что все элементы данных имеют уникальные имена, как в вашем примере, просто используйте один хеш:
Datr("Kakt_Lkz")
Datr("Kakt_Dat_Stam")
Datr("Kaib_Az")
Datr("Kaib_Status_Fm")
Вы можете получить справку Intellisense, создав перечисление всех имен элементов данных и получив:
Datr(DatrItem.KAKT_LKZ)
Datr(DatrIrem.KAIB_STATUS_FM)