コード例 #1
0
        public FlightDetailPanel()
        {
            InitializeComponent();
            this.Loaded += (c, e) =>
            {
                _segment = this.DataContext as Segment;
                SetGroupName(ClassList);

                if (!_segment.Classes.Any())
                {
                    ClassList.Visibility = Visibility.Collapsed;
                }

                if (_segment.SelectedClass != null)
                {
                    var selectedClass = _segment.SelectedClass;
                    ClassName.Value = selectedClass.Name;
                    if (JourneyDetailsPage.OnClassesChecked != null)
                    {
                        JourneyDetailsPage.OnClassesChecked();
                    }
                }
                else if (_segment != null && _segment.SelectedClass != null)
                {
                    int index = _segment.Classes.IndexOf(_segment.Classes.SingleOrDefault(x => x.Name == _segment.SelectedClass.Name));
                    GetListBoxItems(ClassList)[index].IsChecked = true;
                }
            };
        }
コード例 #2
0
        private void rbClass_Checked(object sender, RoutedEventArgs e)
        {
            var source = e.OriginalSource as RadioButton;

            _segment.SelectedClass = source.Tag as JourneyClass;

            if (_selectedButton != source && JourneyRequests.PriceDetailsRequest.IsCompleted)
            {
                if (Database.TempData.Ticket.Journeys.Count(x => x.Segments.Any(y => y.SelectedClass == null)) == 0 && JourneyDetailsPage.OnClassesChecked != null)
                {
                    JourneyDetailsPage.OnClassesChecked();
                }

                ClassName.Value = _segment.SelectedClass.Name;
                _selectedButton = source;
            }
            else if (_selectedButton != null)
            {
                _selectedButton.IsChecked = true;
            }
        }