Je tente d'obtenir des données de classe associées à un ImageButton cliqué de la souris; ImageButton est situé dans un WrapPanel enveloppé par Scollviewer et rempli de nombreux autres ImageButtons. Le problème est que même si je peux voir l'instance de ImageButton sélectionnée "((PlanetClass) (fe))", et avoir la visibilité des données sous-jacentes de l'instance de classe "((PlanetClass) (fe)). pour accéder aux données de terrain de la classe. L'exemple ci-dessous illustre mon intention. Est-ce que j'aborde ce problème correctement (WrapPanel (enveloppé dans ScrollViewer) -> ImageButton -> FrameworkElement -> Instance du bouton -> Field Data)? Sinon, quel serait le meilleur moyen d'accéder à l'instance ImageButton et aux données associées à l'instance? Est-ce que quelqu'un pourrait me diriger dans la bonne direction?Visibilité des données de champ Classe de ImageButton cliqué avec la souris situé dans WrapPanel
// WPF EventHandler at the container level:
<ScrollViewer ButtonBase.Click="SolarSystem_Click">
// Handles the ImageButton mouseClick event within the ScrollViewer wrapping the WrapPanel.
private void SolarSystem_Click(Object sender, RoutedEventArgs e)
{
FrameworkElement fe = e.OriginalSource as FrameworkElement;
SelectedPlanet PlanetSelected = new SelectedPlanet(fe);
MessageBox.Show(PlanetSelected.PlanetName);
}
// Used to initiate instance of ImageButton to access field data.
public SelectedPlanet(FrameworkElement fe)
{
return ((PlanetClass)(fe));
}
// Class Data
public class PlanetClass
{
string planetName;
public PlanetClass(string planetName)
{
PlanetName = planetName;
}
public string PlanetName
{
set { planetName = value; }
get { return planetName; }
}
}