en essayant de résoudre le problème suivant:WPF StackPanel a perdu son enfant
J'ai un StackPanel qui contient une Image en tant que. Mais si je fais panel.Children.Count il retourne parfois 0 et parfois 1. Pourquoi? Comment puis-je réparer cela? Remarque: j'obtiens le StackPanel de l'objet expéditeur d'un MouseEvent.
Est-ce que quelqu'un a une idée de comment résoudre mon problème? Toute aide est appréciée :)
Mise à jour:
private void MoveContainer(object sender, MouseEventArgs e)
{
StackPanel panel = sender as StackPanel;
MessageBox.Show(panel.Children.Count.ToString());
}
Mise à jour 2:
<StackPanel Name="a1" AllowDrop="True"
PreviewMouseLeftButtonDown="StartDrag"
PreviewMouseMove="MoveContainer"
Visibility="Visible"
Background="Transparent">
<Image Source="testcontainer.png" Width="60" Height="30"></Image>
</StackPanel>
Mise à jour 3:
private void StartDrag(object sender, MouseEventArgs e)
{
startPos=e.GetPosition(null); //startPos is a local attribute
}
@flop - postez votre code – dugas
@thedugas a mis à jour le code en post :) – flop
Pouvez-vous poster un peu de votre Xaml, je ne peux pas recréer ce problème. Il semble que ce soit un problème de routage d'événement, la variable de panneau est-elle toujours correctement convertie? – benPearce