2016-02-18 17 views
0

У меня есть представление WPF, которое охватывает пользовательский элемент управления как часть его. После обнуления пользовательского элемента управления с помощью элемента управления ScrollViewer я не могу прокручивать элемент управления. Вертикальная полоса прокрутки отображается, но не включена.Представление прокручиваемого пользовательского элемента управления в представлении

---------------------- 
| Main View   | 
|     | 
| ---------------- | 
| | User Control | | 
L____________________| 
    |______________| 

Это как моя точка зрения изложил, и есть <ScrollViewer> вокруг пользовательского элемента управления, но по какой-то причине это не прокручиваются.

Любая помощь, которую вы можете пролить на эту проблему, была бы полезна.

Спасибо.

Редактировать: добавление образца исходного кода:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="22" /> 
     <RowDefinition Height="48" /> 
     <RowDefinition Height="94" /> 
     <RowDefinition Height="10" /> 
     <RowDefinition Height="90" /> 
     <RowDefinition Height="*" /> 
    </Grid.RowDefinitions> 
    <ScrollViewer Grid.Row="6" Margin="35,25,0,0" Width="1824" VerticalScrollBarVisibility="Visible" > 
     <local:Control DataContext="{Binding ViewModel}" Margin="40,0,0,0"/> 
    </ScrollViewer> 
</Grid> 

Изменить 2: Контроль пользователя выполнен с Canvas, таким образом, это усложняет вещи. Поэтому, если у кого-то есть обходное решение, это было бы полезно.

+0

добавьте код –

+0

попытайтесь удалить 'Width =" 1824 "из' ScrollViewer' и измените 'Grid.Row' на' Grid.Row = "5" ' –

+0

Удаление ширины ничего не меняет. Изменение строки сетки также ничего не изменило. –

ответ

0

Вы использовали Grid.Row = "6", где у вас всего 6 строк.

Строки начинаются с индекса 0, поэтому Grid.Row = "5" будет последней строкой.

+0

см. Комментарий выше –

Смежные вопросы