2010-06-23 8 views
2

Je cherche à être en mesure de valider si l'utilisateur cherche à faire une drag drag valide et l'avoir indiqué par la couleur de la destination CompartmentShape, j'ai fait ce qui suit la possibilité de valider correctement, j'ai juste besoin de mettre à jour l'interface utilisateurMettre à jour la forme du contour de la couleur du contour sur DragOver dans DSL

public override void OnDragDrop(DslDiagrams.DiagramDragEventArgs e) 
    { 
     BCSDataSourceTypes dataSourceType = GetDataSourceType(e.Data); 

     if (dataSourceType == BCSDataSourceTypes.Unknown) 
     { 
      return; 
     } 

     FieldInfo info = e.Data.GetType().GetField("innerData", BindingFlags.NonPublic | BindingFlags.Instance); 
     object obj = info.GetValue(e.Data); 
     info = obj.GetType().GetField("innerData", BindingFlags.NonPublic | BindingFlags.Instance); 
     System.Windows.DataObject dataObj = info.GetValue(obj) as System.Windows.DataObject; 

     if (dataObj != null) 
     { 
      SqlStoredProcedure storedProcedure = dataObj.GetData(typeof(SqlStoredProcedure)) as SqlStoredProcedure; 
      if (storedProcedure != null) 
      { 
       MessageBox.Show(string.Format("{0} is valid here", storedProcedure.Name)); 
      } 
     } 

     e.Handled = true; 
    } 

Mon problème est que je ne suis pas en mesure d'obtenir une référence à la couleur du contour, toute aide est grandement appréciée.

Répondre

2

Vous devez ajouter une propriété exposée (clic droit sur la forme et choisissez « Ajouter Exposed »)

Meilleures salutations

+0

Jean-Marc Prieur - vous monsieur sont un génie. Merci d'avoir trouvé ce post et d'y répondre, j'apprécie vraiment votre temps et vos efforts. –

Questions connexes