Я хочу использовать Reflection для динамического заполнения моих флажков.
Я нашел полезный ответ здесь
И использовал его в своем коде:
public static List<System.Type> getModuleList()
{
// fill with all Classes in Timestamp.View.UserControls.ModuleView per Reflection
List<System.Type> theList = Assembly.GetExecutingAssembly().GetTypes()
.Where(t => t.Namespace == "Timestamp.View.UserControls.ModuleView")
.ToList();
return theList;
}
Я заполнил свои флажки следующим образом:
foreach (System.Type type in ModuleController.getModuleList())
{
cbModule1.Items.Add(type);
cbModule2.Items.Add(type);
cbModule3.Items.Add(type);
cbModule4.Items.Add(type);
}
Теперь я хочу создать новый экземпляр SelectedType
private void CbModule4_SelectionChanged(object sender, SelectionChangedEventArgs e) { ucModul4.Content = //new Instance of Selected Item }
Я мог бы использовать Reflection для создания нового экземпляра, но я не знаю, как это сделать.
- Я хочу дать каждому классу строку, которая будет отображаться как элемент в поле флажка. Возможно ли это, или мне нужен метод для поиска класса по его строке?
РЕДАКТИРОВАТЬ: мне нужно спорить, почему мой вопрос отличается от этого
Итак, во-первых, этот вопрос мог решить только одну из моих проблем, но я нашел его раньше, и это мне не помогло. Я не знаю, как получить тип списка и как дать классу псевдоним.