2014-12-30 2 views
0

저는 UseraControl에 DataGrid가 있습니다. 별도의 UserControl에서 DataGrid와 UserControl을 가리키는 프레임이 있습니다. 응용 프로그램이 실행되면 DataGrid가 프레임에 표시됩니다. Datagrid의 스크롤 바를 볼 수는 없습니다. 어쨌든 재래식이 아닙니다.DataGrid 스크롤 막대가 프레임에 표시되지 않습니다.

이 프레임에 프레임을 배치하면 스크롤 막대가 표시됩니다.

d:DesignHeight="768" d:DesignWidth="1366"> 

<Grid DataContext="{Binding Source={x:Static app:detailsSQL.Instance}}"> 
    <Frame ScrollViewer.VerticalScrollBarVisibility="Visible" ScrollViewer.HorizontalScrollBarVisibility="Visible" ScrollViewer.CanContentScroll="True" Source="/content/membership/members/details/tabs/grid.xaml"/> 
</Grid> 

그러나 이렇게하면 스크롤 막대가 사라지고 마우스 휠로 스크롤 할 수 있습니다.

d:DesignHeight="768" d:DesignWidth="1366"> 

<Grid DataContext="{Binding Source={x:Static app:detailsSQL.Instance}}"> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="Auto"/> 
     <ColumnDefinition Width="Auto"/> 
     <ColumnDefinition Width="Auto"/> 
    </Grid.ColumnDefinitions> 
    <Frame Grid.Column="1" Source="/content/membership/members/details/tabs/grid.xaml"/> 
</Grid> 

프레임을 GridColumn에 두지 않더라도 스크롤 막대가 표시되지 않습니다. 이 것이 민감한 이유가 있습니까?

답변

0

스크롤 막대는 컨트롤을 그리는 데 사용할 수있는 영역이 할당 된 영역보다 많은 경우에만 표시됩니다. 여기에 사용자 정의 컨트롤에서 그리드 주위에 스크롤 막대를 넣을 수 있습니다.

또는 usercontrol 자체를 스크롤 할 수있게하려는 경우 프레임 주위에 넣을 수도 있습니다.

예 :

<ScrollViewer Height="",Width=""> 
<Frame Grid.Column="1" Source="/content/membership/members/details/tabs/grid.xaml"/> 
</ScrollViewer> 

하고있는 ScrollViewer에게 크기를 제공하려고합니다.

관련 문제