C# WPF-无限数据网格高度

C# WPF-无限数据网格高度,c#,wpf,C#,Wpf,我正在使用Syncfusion的SfDataGrid而不是标准的,但我认为这个问题更多的是关于XAML,而不是控件本身 所以,我有一个DataGrid窗口。例如,如果有60条记录,那么窗口就会变得非常高。我希望窗户不要改变它的大小。我真的不知道为什么会这样 这是我的XAML: <Grid> <Grid.ColumnDefinitions> <ColumnDefinition Width="*"/> <ColumnD

我正在使用Syncfusion的SfDataGrid而不是标准的,但我认为这个问题更多的是关于XAML,而不是控件本身

所以,我有一个DataGrid窗口。例如,如果有60条记录,那么窗口就会变得非常高。我希望窗户不要改变它的大小。我真的不知道为什么会这样

这是我的XAML:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*"/>
        <ColumnDefinition Width="Auto"/>
    </Grid.ColumnDefinitions>

    <Grid Grid.Column="0">
        <Grid.RowDefinitions>
            <RowDefinition Height="*"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <StackPanel Margin="10,0,10,0" Grid.Row="0" DataContext="{Binding Info}">
            <TextBlock Text="Amount:"/>
            <sf:CurrencyTextBox Value="{Binding Amount}" Margin="0,0,0,10"/>
            <!-- some other controls -->

            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="Auto"/>
                    <RowDefinition Height="Auto"/>
                </Grid.RowDefinitions>

                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto"/>
                    <ColumnDefinition Width="*"/>
                </Grid.ColumnDefinitions>

                <TextBlock Grid.Column="0" Grid.Row="0" Style="{StaticResource LeftLabel}"
                           Text="Count:"/>
                <sf:UpDown Grid.Column="1" Grid.Row="0" Margin="0,0,0,5"
                           Value="{Binding Count}"/>

                <TextBlock Grid.Column="0" Grid.Row="1" Style="{StaticResource LeftLabel}"
                           Text="Year count:"/>
                <sf:UpDown Grid.Column="1" Grid.Row="1" 
                           Value="{Binding YearCount}"/>
            </Grid>

        </StackPanel>

        <Button Grid.Row="1" HorizontalAlignment="Right" VerticalAlignment="Bottom" Margin="0,10,10,5" 
                Content="Simulate >>"
                Command="{Binding SimulateCommand}"/>
    </Grid>

<!-- This is right part of the window with datagrid -->
    <DockPanel Grid.Column="1">
        <WrapPanel DockPanel.Dock="Top">
            <TextBlock Margin="10" Text="Total amount:" />
            <TextBlock Text="{Binding TotalAmount"/>
        </WrapPanel>

<!-- and the datagrid -->
        <sf:SfDataGrid AutoGenerateColumns="False"
                       AllowDeleting="False"
                       AllowEditing="False"
                       IsReadOnly="False"
                       AllowGrouping="False"
                       AllowFiltering="False"
                       ItemsSource="{Binding History}">
            <sf:SfDataGrid.Columns>
                <sf:GridDateTimeColumn DisplayBinding="{Binding Date}" MappingName="PaymentDay" HeaderText="Date"/>
                <sf:GridCurrencyColumn DisplayBinding="{Binding Amount}" MappingName="PayAmount" HeaderText="Amount"/>
            </sf:SfDataGrid.Columns>
        </sf:SfDataGrid>

    </DockPanel>        
</Grid>


那么它有什么问题呢?

尝试用网格替换DockPanel,其中包含
DataGird
的行定义与HeightI尝试的一样具有“*”,事实上网格才刚开始。然后我在某个地方读到将其更改为dockpanel。尝试将窗口高度设置为“自动”或“*”。窗口的
高度是多少?是否设置了
SizeToContent
属性?最小高度设置为400。实际上它是UserControl,所以它没有SizeToContent。但此控件的父窗口的SizeToContent设置为“WidthAndHeight”,不应更改。由于这是一个“基本对话框窗口”。请尝试用网格替换DockPanel,其中包含
DataGird
的行定义与HeightI尝试的一样具有“*”,事实上网格在开始时就存在。然后我在某个地方读到将其更改为dockpanel。尝试将窗口高度设置为“自动”或“*”。窗口的
高度是多少?是否设置了
SizeToContent
属性?最小高度设置为400。实际上它是UserControl,所以它没有SizeToContent。但此控件的父窗口的SizeToContent设置为“WidthAndHeight”,不应更改。因为这是ma“基本对话框窗口”。