WPF 滚动查看器在用户控件中不可见



WPF Scrollviewer 在 Usercontrol 中不可见。

我正在使用棱镜图案。

我在用户控件中有一个滚动查看器,滚动查看器包含一个堆栈面板。

 <UserControl x:Class="SomeView"  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" >
     <UserControl.Resources>        
     <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>        
     </UserControl.Resources>
     <ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">  
     <StackPanel>     
<TextBlock Text="Initialize" HorizontalAlignment="Center" VerticalAlignment="Center"/>
 <StackPanel Orientation="Horizontal">     
 <Label Content="Left"/>     
 <ComboBox ItemsSource="{Binding LeftComboItems}"  SelectedItem="{Binding LeftSelectedItem}" /> 
 <Label Content="Right"/>     
<ComboBox ItemsSource="{Binding RightComboItems}" SelectedItem="{Binding RightSelectedItem}"/>     
 <Label/>    
<Button Content="Save" Command="{Binding SaveCommand}"/>     
 </StackPanel>     
 <StackPanel Visibility="{Binding IsVisible,Converter={StaticResource BooleanToVisibilityConverter}}">   
 <Grid>   

跳过列定义

  <StackPanel Grid.Column="1" Grid.ColumnSpan="2">     
 <Label Content="Left"  />     
 <DataGrid ItemsSource="{Binding LeftDataGrid}" AutoGenerateColumns="False" ColumnWidth="*" Grid.Column="2" >     
 <DataGrid.Columns>     
 <DataGridTextColumn Header="ID" Binding="{Binding ID}" />     
 <DataGridTextColumn Header="Name" Binding="{Binding Name}" />     
 </DataGrid.Columns>     
 </DataGrid>     
 </StackPanel>  
 <StackPanel Grid.Column="4" Grid.ColumnSpan="2">   
 <Label Content="Left Grid" />     
 <DataGrid ItemsSource="{Binding RightDataGrid, Mode=OneWay}" AutoGenerateColumns="False" ColumnWidth="*" CanUserAddRows="False" CanUserDeleteRows="False" >

 <DataGridTextColumn Header="ID" Binding="{Binding id}" />     
 <DataGridTextColumn Header="Name" Binding="{Binding Name}"/>     
 </DataGrid>
 </StackPanel>
    </StackPanel> 
 </Grid>    
     </StackPanel>        
     </ScrollViewer>

LeftComboItems,RightComboItems是字符串类型的可观察集合。

ScrollViewer 不会显示,因为您只有一个空的堆栈面板。尝试添加一些具有宽度或高度的项目,您应该会看到滚动查看器。

最新更新