private void tcTablero_SelectionChanged(object sender, SelectionChangedEventArgs e) { try { if (e.Source is TabControl) { if (((TabControl)e.Source).SelectedIndex == 0) { PuntosMedicionView pm; if (this.controls.ContainsKey(vm.cPuntosMedicion.SelectedItem.IdPuntoMedicion.ToString())) { this.RegistrosViewPuntosMedicion.Content = this.controls[vm.cPuntosMedicion.SelectedItem.IdPuntoMedicion.ToString()]; } else { pm = new PuntosMedicionView(); pm.DataContext = vm.pmAll; //pm.init(this, vm); this.controls.Add(vm.cPuntosMedicion.SelectedItem.IdPuntoMedicion.ToString(), pm); } } if (((TabControl)e.Source).SelectedIndex == 1) { } if (((TabControl)e.Source).SelectedIndex == 2) { } } } catch (Exception ex) { ; } }
void vmPuntosMedicion_PropertyChanged(object sender, System.ComponentModel.PropertyChangedEventArgs e) { if (e.PropertyName == "SelectedItem") { CategoriasViewModel vm = (CategoriasViewModel)sender; if (vm.SelectedItem != null) { PuntosMedicionView pmPuntosMedicion; if (!this.PuntosMedicionRegistros.ContainsKey(vm.SelectedItem.IdPuntoMedicion.ToString())) { pmPuntosMedicion = new PuntosMedicionView(); pmPuntosMedicion.init(this, vm); //pmPuntosMedicion.init(this,vmMain, vm.SelectedItem); this.PuntosMedicionRegistros.Add(vm.SelectedItem.IdPuntoMedicion.ToString(), pmPuntosMedicion); } pmPuntosMedicion = PuntosMedicionRegistros[vm.SelectedItem.IdPuntoMedicion.ToString()]; this.RegistrosViewPuntosMedicion.Content = pmPuntosMedicion; vmMain.SelectedCategoria = (vm.SelectedItem != null) ? vm.SelectedItem : vm.SelectedItemAux; } } }