2017-06-09 8 views
0

Mon ScrollViewer est placé dans le fichier Shell.xaml. J'ai plusieurs UserControls imbriqués. Je montre mon en-tête sur tous les écrans qui est commun pour toutes les pages. Quand je vais à l'écran d'accueil, ma barre de défilement commence à partir de l'en-tête. Maintenant, lorsque je recherche un enregistrement et que je récupère le résultat, certains contrôles de ma page d'accueil sont activés, ce qui déplace automatiquement ma barre de défilement au bas de l'écran lorsque le focus est modifié par programmation. Je veux éviter le défilement automatique sur mon écran d'accueil, mais je le veux sur tous les autres écrans. J'ai cherché beaucoup d'options que j'ai essayé using 'RequestBringIntoView' pour empêcher l'autoscrolling, ai essayé de me concentrer encore sur mon en-tête mais n'ai pas fonctionné. Y a-t-il une autre option pour empêcher le défilement automatique pour un seul écran? Refer this image to understand the problemVous voulez arrêter le défilement automatique de scrollviewer dans une page spécifique wpf

Comme je suis nouveau à WPF, il sera très utile si vous spécifiez les détails les étapes

Répondre

0

J'ai essayé beaucoup d'options pour arrêter le défilement automatique, mais cela n'a pas fonctionné. J'ai essayé d'ajouter un comportement de défilement personnalisé, mais pas de succès. Je ne voulais pas ajouter quoi que ce soit au fichier xaml.cs selon l'architecture MVVM mais je dois ajouter l'événement 'RequestBringIntoView' pour arrêter le défilement automatique et cela a fonctionné et je dois l'ajouter au fichier shell.xaml où scrollviewer a été placé.

0

Il serait beaucoup plus utile si vous fait inclure un exemple de votre XAML et le code derrière. Je vais essayer de faire de mon mieux. Vous souhaiterez probablement ajouter l'élément de visionneuse de défilement à votre code, vous pouvez donc ajuster les propriétés pour désactiver le défilement.

<window propertyname="stuff"> 
<scrollviewer isEnabled="false"> 
//content here 
</scrollviewer> 
</window> 

Cependant, j'ai probablement tort à propos de cela. La meilleure chose à faire serait d'utiliser Microsoft Visual Studio, c'est mieux pour les applications WPF. Vous pouvez facilement jeter un coup d'œil dans la fenêtre des propriétés en cliquant sur l'élément, et à partir de là, vous pourrez trouver les bonnes propriétés pour le scrollviewer. J'espère que je pourrais aider.

+0

Désolé pour ma déclaration précédente qui est fausse. Vous devriez mettre tout dans une grille et à partir de là, vous devriez être en mesure de définir le scrollviewer. –

+0

Merci pour la réponse @Rohan. Cela n'a pas fonctionné. – umesh07