C# (XAML)UserControl在UserControl中,listview没有滚动条并显示整个内容
我想把两个用户控件放到另一个用户控件中。这是我想输入的用户控件C# (XAML)UserControl在UserControl中,listview没有滚动条并显示整个内容,c#,wpf,xaml,user-controls,C#,Wpf,Xaml,User Controls,我想把两个用户控件放到另一个用户控件中。这是我想输入的用户控件 <UserControl x:Class="Project.MainModule.Views.ReportView" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc
<UserControl x:Class="Project.MainModule.Views.ReportView"
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"
xmlns:v="clr-namespace:Project.MainModule.Views"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="800">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="120"></RowDefinition>
<RowDefinition Height="*"></RowDefinition>
</Grid.RowDefinitions>
<v:ReportCommandsView Grid.Row="0"></v:ReportCommandsView>
<v:LogItemListView Grid.Row="1" ></v:LogItemListView>
</Grid>
</UserControl>
第一个报告CommandsView运行良好。然而,当我将第二个usercontrol放入时,我遇到了问题。它有一个ListView,在ListView中,它有一个gridview来显示项目。这是xaml
<UserControl x:Class="Project.MainModule.Views.LogItemListView"
x:Name="LogListView"
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="300" d:DesignWidth="300">
<ListView Name="LogItemListListView" FontSize="14" Grid.Row="0"
ItemsSource="{Binding LogItems}"
SelectedItem="{Binding Mode=TwoWay, Path=CurrentLogItem}"
AlternationCount="2"
BorderThickness="0" Width="Auto"
IsSynchronizedWithCurrentItem="True"
AutomationProperties.AutomationId="LogItemListGrid"
>
<ListView.View>
<GridView AllowsColumnReorder="true" ColumnHeaderToolTip="Log Items View" >
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding Path=ID}" Width="45"/>
<GridViewColumn Header="Category" DisplayMemberBinding="{Binding Path=Category.Description}" Width="120" />
<GridViewColumn Header="Institution" DisplayMemberBinding="{Binding Path=Institution.Description}" Width="140" />
<GridViewColumn Header="Asset" DisplayMemberBinding="{Binding Path=AssetCode}" Width="65" />
<GridViewColumn Header="Reader" DisplayMemberBinding="{Binding Path=Reader}" Width="100" />
<GridViewColumn Header="Create Date" DisplayMemberBinding="{Binding Path=CreateDate}" Width="170" />
</GridView>
</ListView.View>
</ListView>
</UserControl>
我发现在第二个usercontrol的listview中,显示了数据,但没有滚动条。因为它显示了所有的数据。数据在屏幕底部。我试图设置最大高度,它可以工作,滚动条出来了。但这对我不好。我需要处理屏幕大小改变的问题。我能做什么?你把
ReportView
控件放在哪里?是它,还是它的父控件之一,在StackPanel
还是Canvas
?我把它放在一个窗口中,在一个选项卡控件@dkozl内整个结构是一个主窗口,然后有一些选项卡控件,每个选项卡控件由几个用户控件组合而成。它是选项卡上唯一的控件吗?如果不是,那么您使用哪个面板在单个选项卡上组合多个控件?是的。ReportView是该选项卡上的唯一控件。但是ReportView由两个用户控件组成。其中一个控件是名为LogitemListView的listview。当数据不足时,显示正常。但是当数据太多的时候。它似乎没有滚动条让我向下滚动。它只是将数据显示在屏幕底部。