示例#1
0
        static void Main()
        {
            TrainSignal   signal   = new TrainSignal();
            Train         train    = new Train();
            LevelCrossing crossing = new LevelCrossing();
            WarningSiren  siren    = new WarningSiren();

            crossing.registerToSignal(signal);
            train.registerSignal(signal);
            siren.registerToSignal(signal);

            signal.setSignal(signalColour.green);
            siren.respondToSignal(signalColour.green);
            signal.setSignal(signalColour.red);
            siren.respondToSignal(signalColour.red);
            signal.setSignal(signalColour.green);
            siren.respondToSignal(signalColour.green);
        }
        public DataBindingView()
        {
            InitializeComponent();

            LevelCrossing levelCrossing = new LevelCrossing
            {
                Id   = 1,
                Name = "Przejazd kolejowy nr 1",
            };

            LevelCrossing levelCrossing2 = new LevelCrossing
            {
                Id   = 2,
                Name = "Przejazd kolejowy nr 2",
            };


            this.DataContext = levelCrossing;
        }
示例#3
0
        private void ObjectSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if ((e.Source as ComboBox).SelectedIndex == -1)
            {
                return;
            }
            var           basicObject = (e.Source as ComboBox).SelectedItem as BasicObject;
            List <Packet> packets     = basicObject switch
            {
                Booster _ => new List <Packet>(),
                GenericInput _ => new List <Packet>()
                {
                    new SignOfLifeTimer()
                },
                GenericOutput _ => new List <Packet>()
                {
                    new SignOfLifeTimer(), new SetOutput()
                },
                IRDetection _ => new List <Packet>(),
                LevelCrossing _ => new List <Packet>()
                {
                    new SignOfLifeTimer(), new SetLevelCrossing()
                },
                objects.Objects.Points _ => new List <Packet>()
                {
                    new SignOfLifeTimer(), new ThrowPoints()
                },
                SemaphoreWing _ => new List <Packet>(),
                SignalBoard _ => new List <Packet>(),
                Turntable _ => new List <Packet>(),
                _ => new List <Packet>(),
            };

            packets.Insert(0, new RequestStatus());
            (DataContext as ClientViewModel).Packets.Clear();
            (DataContext as ClientViewModel).Packets.AddRange(packets);
            var packetsList = this.FindControl <ComboBox>("PacketsList");

            packetsList.SelectedIndex = 0;
        }