private void TimeSegment_MouseDown(object sender, MouseButtonEventArgs e) { Rectangle rect = sender as Rectangle; if (rect == null) { return; } ScheduleHour hour = rect.DataContext as ScheduleHour; if (hour == null) { return; } ScheduleViewModel viewModel = this.DataContext as ScheduleViewModel; if (viewModel != null) { viewModel.TimeSegment_MouseDown(hour, e); } }