2012-01-30 18 views
5

Tengo un control ListView dentro de UserControl. Pero cuando el contenido sobrepasa el tamaño del ListView, el ScrollBar vertical no está habilitado, a pesar de establecerlo en XAML.ScrollViewer no habilitado para ListView

enter image description here

XAML aparece como sigue:

<UserControl x:Class="GrandSuccessProject.View.ContactsView" 
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
      xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
      xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
      mc:Ignorable="d" 
      d:DesignHeight="367" d:DesignWidth="548" Background="{x:Null}" VerticalContentAlignment="Top"> 

<ListView ScrollViewer.CanContentScroll="True" 
      ScrollViewer.VerticalScrollBarVisibility="Visible" 
      ItemsSource="{Binding SelectedContacts}" 
      ItemContainerStyle="{StaticResource ContainerStyle}" 
      Grid.Row="1" 
      VerticalAlignment="Top" 
      VerticalContentAlignment="Top" />  

</UserControl> 

También probé la agrupación ListView dentro de un ScrollViewer, pero todavía no funciona.

Muchas gracias de antemano :)

+0

Como no puedo reproducir esto con el código dado, ¿podría quizás construir un ejemplo que lo haga? Si intenta reducirlo, incluso podría darse cuenta de dónde está el problema. –

Respuesta

6

Esto parece

  1. la vista de lista tomando todo el espacio que necesita para todos los elementos, por lo tanto, el desplazamiento está desactivado.
  2. ListView que supera los límites de su contenedor.

Supongo que el contenedor tiene la culpa de no restringir el tamaño de ListView, ¿dónde lo colocaste? Asegúrese de que el contenedor establece los controles con limitaciones.

+0

Tiene toda la razón, si mantengo una altura de píxel de corrección para ListView, la barra de desplazamiento funciona. – Marshal

+0

@Marshal: Algo está mal, pero es difícil decir sin todo el contexto, ¿qué propiedades se establecen en el UserControl? –

+0

Consulte mi actualización para las configuraciones de control de usuario – Marshal

Cuestiones relacionadas