Проблема с сеттером коллекции trains
У меня есть база данных структуры ScheduleTrain. При изменении значения ячейки DataGridView,вызываеться функция setCurrentCellValue(), которая должна получить значение текущей ячейки и передать в сеттер коллекции trains, но этого не происходит. С помощью debugger выяснил, что все проходит хорошо до того момента, как сеттеры устанавливает значение.
Структура базы данных:
public struct ScheduleTrain
{
private string DestinationStation;
private string NumberTrain;
private DateTime DepartureTime;
private DateTime ArrivalTime;
private double TravelPrice;
public ScheduleTrain(string DestinationStation, string NumberTrain, DateTime DepartureTime,
DateTime ArrivalTime, double TravelPrice)
{
this.DestinationStation = DestinationStation;
this.NumberTrain = NumberTrain;
this.DepartureTime = DepartureTime;
this.ArrivalTime = ArrivalTime;
this.TravelPrice = TravelPrice;
}
public void setDestinationStation(String DestinationStation)
{
if (DestinationStation.Length <= 15)
{
this.DestinationStation = DestinationStation;
}
}
public string getDestinationStation()
{
return DestinationStation;
}
public void setNumberTrain(String NumberTrain)
{
if (NumberTrain.Length <= 5)
{
this.NumberTrain = NumberTrain;
}
}
public string getNumberTrain()
{
return NumberTrain;
}
public void setDepartureTime(DateTime DepartureTime)
{
this.DepartureTime = DepartureTime;
}
public DateTime getDepartureTime()
{
return DepartureTime;
}
public void setArrivalTime(DateTime ArrivalTime)
{
this.ArrivalTime = ArrivalTime;
}
public DateTime getArrivalTime()
{
return ArrivalTime;
}
public void setTravelPrice(double TravelPrice)
{
this.TravelPrice = TravelPrice;
}
public double getTravelPrice()
{
return TravelPrice;
}
};
Коллекция:
public List<ScheduleTrain> trains = new List<ScheduleTrain>();
Сама функция setCurrentCellValue():
void setCurrentCellValue()
{
int columnIndex = TrainDataView.CurrentCell.ColumnIndex;
int rowIndex = TrainDataView.CurrentCell.RowIndex;
switch (columnIndex)
{
case 0:
trains[rowIndex].setDestinationStation(TrainDataView.CurrentCell.Value.ToString());
break;
case 1:
trains[rowIndex].setNumberTrain(TrainDataView.CurrentCell.Value.ToString());
break;
case 2:
trains[rowIndex].setDepartureTime(Convert.ToDateTime
(TrainDataView.CurrentCell.Value.ToString()));
break;
case 3:
trains[rowIndex].setArrivalTime(Convert.ToDateTime
(TrainDataView.CurrentCell.Value.ToString()));
break;
case 4:
trains[rowIndex].setTravelPrice(Double.Parse
(TrainDataView.CurrentCell.Value.ToString()));
break;
default:
break;
}
}
Ссылка на репозиторий github:
https://github.com/UnnamedH/Kursova-robota/blob/master/CourseWorkCsharp/Form1.cs