//-------------------------------------------------------------------------------------- private void m_txtSelectReference_OnSelectedObjectChanged(object sender, EventArgs e) { IReferenceElementCommandable rel = m_txtSelectReference.ElementSelectionne as IReferenceElementCommandable; if (rel != null) { m_selectTypeEquipement.ElementSelectionne = rel.ElementCommandable as CObjetDonnee; } InitSelectReference(); if (rel != null && rel.Reference.Trim() != "") { m_txtReference.Text = rel.Reference; } if (!m_bIsInitializing) { HasChange = true; } }
//-------------------------------------------------------------------------------------- private void m_selectTypeEquipement_OnSelectedObjectChanged(object sender, EventArgs e) { if (!m_bIsInitializing) { IReferenceElementCommandable rel = m_txtSelectReference.ElementSelectionne as IReferenceElementCommandable; InitSelectReference(); if (rel != null && !rel.ElementCommandable.Equals(m_selectTypeEquipement.ElementSelectionne)) { m_selectTypeEquipement.ElementSelectionne = rel.ElementCommandable as CObjetDonnee; } IElementCommandable eltCom = m_selectTypeEquipement.ElementSelectionne as IElementCommandable; if (eltCom != null) { m_txtTexte.Text = eltCom.Libelle; } } if (!m_bIsInitializing) { HasChange = true; } }
private void InitSelectReference() { IReferenceElementCommandable lastRel = m_txtSelectReference.ElementSelectionne as IReferenceElementCommandable; IElementCommandable eltCom = m_selectTypeEquipement.ElementSelectionne as IElementCommandable; CFiltreData filtreEquipement = null; CFiltreData filtreConsommable = null; CTypeEquipement typeEquipement = m_selectTypeEquipement.ElementSelectionne as CTypeEquipement; if (typeEquipement != null) { filtreEquipement = CFiltreData.GetAndFiltre(filtreEquipement, new CFiltreData(CTypeEquipement.c_champId + "=@1", typeEquipement.Id)); } else if (m_fournisseurPourFiltre != null) { filtreEquipement = CFiltreData.GetAndFiltre(filtreEquipement, new CFiltreData(CDonneesActeurFournisseur.c_champId + "=@1", m_fournisseurPourFiltre.Id)); } CTypeConsommable typeConsommable = m_selectTypeEquipement.ElementSelectionne as CTypeConsommable; if (typeConsommable != null) { filtreConsommable = CFiltreData.GetAndFiltre(filtreConsommable, new CFiltreData(CTypeConsommable.c_champId + "=@1", typeConsommable.Id)); } else if (m_fournisseurPourFiltre != null) { filtreConsommable = CFiltreData.GetAndFiltre(filtreConsommable, new CFiltreData(CDonneesActeurFournisseur.c_champId + "=@1", m_fournisseurPourFiltre.Id)); } if (typeEquipement != null) { m_txtSelectReference.InitAvecFiltreDeBase( typeof(CRelationTypeEquipement_Fournisseurs), "Libelle", filtreEquipement, true); } else if (typeConsommable != null) { m_txtSelectReference.InitAvecFiltreDeBase( typeof(CConditionnementConsommable), "Libelle", filtreConsommable, true); } else { m_txtSelectReference.InitMultiple( new CConfigTextBoxFiltreRapide[] { new CConfigTextBoxFiltreRapide( typeof(CRelationTypeEquipement_Fournisseurs), filtreEquipement, "Libelle"), new CConfigTextBoxFiltreRapide( typeof(CConditionnementConsommable), filtreConsommable, "Libelle") }, true); } if (lastRel != null && eltCom == null && lastRel.ElementCommandable == eltCom) { m_txtSelectReference.ElementSelectionne = (CObjetDonnee)lastRel; } }