如何使用 Uid= 更改网格行定义 "Row6"当某些表单打开时,它是最小和最大高度,在运行时使用它调用此网格



说我声明了一种带有网格设计的表单,该表格在打开时用其他形式使用或重新标记。XAML ID就是这样:

    <Grid x:Uid="SplittingGrid" x:Name="SplittingGrid" Grid.Row="2" Background="Gray" Height="auto">
                <Grid.RowDefinitions>
                    <RowDefinition x:Uid="Row5" Height="200*" />
                    <RowDefinition x:Uid="Row6" Height="120*" MaxHeight="250" MinHeight="150" />
                </Grid.RowDefinitions>
   </Grid>

这正是我现在显示代码的方式,但是如果我想更改它的最大值,并且在某个形式上启动了该XAML的最大高度,我该如何在运行时间内完成。

public void InitGridForm()
        {               
            if (GlobalVar.SETnewFORMS_OPEN == 1)
            {
                PartsGrid.Visibility = Visibility.Visible;
                Row6 Set Max and Min Size.
            }
            else
            {
                PartsGrid.Visibility = Visibility.Collapsed;    
            }       
        }

这是i在网格形式上设置的代码,当它初始化时,我设置了一个条件,即如果打开某个表单,则是它的设置,并且如果打开了某个表单并将其称为此Gridform,则是他的设置。

我的问题是,如何在运行时动态设置网格的最大和最小尺寸?有可能吗?

我不确定我是否理解您的问题,但我希望如此。如果将x:Uid="Row6"更改为XAML中的x:Name="Row6",则可以在背后的代码中设置这样的两个属性:

if (GlobalVar.SETnewFORMS_OPEN == 1)
{
    PartsGrid.Visibility = Visibility.Visible;
    this.Row6.MinHeight = 400;
    this.Row6.MaxHeight = 600;
}
else
{
    PartsGrid.Visibility = Visibility.Collapsed;
}

最新更新