Получить свойство наследника

125
15 декабря 2021, 17:00

У меня есть абстрактный класс со своими свойствами.

abstract class Vihicle
{
    [DataMember]
    protected string name { get; set; }
    [DataMember]
    protected double price { get; set; }
    [DataMember]
    protected double maxSpeed { get; set; }
    [DataMember]
    protected string year { get; set; }
    [DataMember]
    protected string color { get; set; }
    [DataMember]
    protected int weight { get; set; }
    [DataMember]
    protected int amountGears { get; set; }

Есть наследники, у которых несколько своих уникальных свойств.

class Car: Vihicle
{
    [DataMember]
    private int amountPassengers;
    [DataMember]
    private string type;

Объекты хранятся в списке. Когда я обращаюсь к объекту из списка и хочу получить свойства, то могу получить только свойства абстрактного класса, а к свойствам наследника достучаться не могу.

var car = this.garage.vihicle[listBoxInfo.SelectedIndex];
        textName.Text = car.getName();
        textPrice.Text = Convert.ToString(car.getPrice());
        textMaxSpeed.Text = Convert.ToString(car.getMaxSpeed());
        textYear.Text = car.getYear();
        textColor.Text = car.getColor();
        textWeight.Text = Convert.ToString(car.getWeight());
        textAmountPassenger.Text = car.getAmountPassengers();

Как можно решить данный вопрос?

READ ALSO
Как кратко инициализировать объекты

Как кратко инициализировать объекты

Как то можно саму инициализацию объектов переписать в меньшое количество строк?

138
Могу ли я создавать элементы визуального интерфейса в MVVM

Могу ли я создавать элементы визуального интерфейса в MVVM

Могу ли я создавать элементы визуального интерфейса в MVVM? Допустим у меня по нажатию кнопки "+" появляется еще один TextBoxКак это прописать во VM?

195
Как убрать слово из строки PHP?

Как убрать слово из строки PHP?

Необходимо убрать слово+символ "- Неисправности" из генерации тега посредством PHPТоварищи-вебмастеры, как можно это осуществить?

174