2010-09-09 5 views
15

Ich habe eine Seite mit zwei ListBox-Steuerelemente. Die Seite enthält eine Liste von Elementen basierend auf der Kategorie des Elements.WP7 Verhindern List Scrolling

Es gibt einen Header für eine Kategorie von einem ListBox gefolgt alle Elemente für diese Kategorie enthält, dann folgte ein weiterer Header eine Liste der Elemente für diese Kategorie usw.

Die Frage, die ich, dass jeder ist mit bin ListBox scrollt unabhängig. Ich möchte die ganze Seite scrollen (was es tut), aber nicht jede einzelne ListBox. Die ListBox-Steuerelemente werden automatisch auf ihren Inhalt erweitert, sodass sie nicht durchsucht werden müssen. Ist das möglich?

+0

Was passiert, wenn die kombinierte Länge der beiden Listenfelder größer als der Bildschirm ist? Es scheint mir, dass dies Usability-Probleme haben könnte? Wie wäre es anders, eine Liste zu haben und die Elemente im unteren Teil zu ändern, basierend auf einer Auswahl im oberen Teil? –

+0

Der Bildschirm ist scrollbar, sodass Sie nach unten scrollen können, um die anderen Listenfelder anzuzeigen, wenn sie länger als der Bildschirm sind. – CACuzcatlan

Antwort

42

Alles, was Sie tun müssen, um den Bildlauf zu deaktivieren, ist nur ScrollViewer.VerticalScrollBarVisibility="Disabled" einzustellen (wenn Sie den horizontalen Bildlauf deaktivieren müssen, dann verwenden Sie ScrollViewer.HorizontalScrollBarVisibility="Disabled").

Hier ist ein einfaches Beispiel:

<ListBox Height="200" ScrollViewer.VerticalScrollBarVisibility="Disabled"> 
    <ListBoxItem > 
     <Button Content="item1" /> 
    </ListBoxItem> 
    <ListBoxItem > 
     <Button Content="item2" /> 
    </ListBoxItem> 
    <ListBoxItem > 
     <Button Content="item3" /> 
    </ListBoxItem> 
    <ListBoxItem > 
     <Button Content="item4" /> 
    </ListBoxItem> 
    <ListBoxItem > 
     <Button Content="item5" /> 
    </ListBoxItem> 
</ListBox> 

Ich hoffe, dass dies Ihre Frage beantwortet.

+0

Danke, das war genau das was ich gesucht habe. – CACuzcatlan

+0

Können Sie eine weitere Antwort über die Verwendung in C# -Code hinzufügen? – iamatsundere181