У меня есть абстрактный классC# производные типы в поле со списком
public abstract class PairingMethod : IPairingMethod
{
virtual string Name { get; } = "Default Pairing";
protected ICollection<IPlayer> PlayersToPair { get; set; }
protected PairingMethod(ICollection<IPlayer> players)
{
PlayersToPair = players;
}
public virtual void GeneratePairingsForRound(IRound round)
{
throw new System.NotImplementedException();
}
}
Теперь я попытался создать поле со списком на основе всех типов, которые являются производными от базового класса выше. Я создал поле со списком, и он использует имена классов как элементы, но затем, когда запускается событие смены поля, мне нужно знать, какой производный класс был выбран. Тогда я могу создать экземпляр этого класса для генерации пар.
Я попытался реализовать свою собственную поле со списком с PairingMethods как элементы, но не могу заставить его работать.
Любые идеи/предложения?
C
1. Правильно отформатируйте свой код, отступы здесь повсюду. 2. Покажите свой код со списком, это важный бит здесь. – DavidG
'' он использует имена классов в качестве элементов [...] Мне нужно знать, какой производный класс был выбран «' - Не было бы это только текущим выбранным значением поля со списком? Не совсем ясно, в чем проблема. – David
Извините, Дэвид, я могу получить индекс из выбранного элемента. Но что было бы чистым способом преобразования выбранного индекса в производный класс? – Jack