Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight中的控制锚定_Silverlight - Fatal编程技术网

Silverlight中的控制锚定

Silverlight中的控制锚定,silverlight,Silverlight,这可能是一个有点愚蠢的问题,但我不知道还有什么可以尝试,所以我想寻求一些帮助。我的问题是在Silverlight中锚定控件 我有一个网格(C1FlexGrid),它位于一个控件中。控件在页面中使用,我只希望网格大小由浏览器窗口的大小决定。我希望它有一个最小大小,但允许它在用户扩展浏览器窗口时垂直和水平扩展。在WinForms中(我已经习惯了),这很容易 然而,在Silverlight,它让我头疼。有可能让它按照我想要的方式行事吗 我已经将控件宽度和高度设置为自动,并指定了一些设计宽度/高度。然后

这可能是一个有点愚蠢的问题,但我不知道还有什么可以尝试,所以我想寻求一些帮助。我的问题是在Silverlight中锚定控件

我有一个网格(C1FlexGrid),它位于一个控件中。控件在页面中使用,我只希望网格大小由浏览器窗口的大小决定。我希望它有一个最小大小,但允许它在用户扩展浏览器窗口时垂直和水平扩展。在WinForms中(我已经习惯了),这很容易

然而,在Silverlight,它让我头疼。有可能让它按照我想要的方式行事吗

我已经将控件宽度和高度设置为自动,并指定了一些设计宽度/高度。然后将用户控件放置到页面上,并将控件和页面宽度/高度设置为“自动”

当网格加载其数据(几百行)时,它会根据中有200行的事实自动调整网格大小,即变得非常长

编辑

下面是一个简单示例中的一些XAML:

<navigation:Page 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:navigation="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Navigation"
    xmlns:c1="http://schemas.componentone.com/winfx/2006/xaml" x:Class="Optimize.Client.Presentation.AboutView"
    mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480"
    Title="About" 
    x:Name="AboutPage"
    Style="{StaticResource PageStyle}">

    <Grid x:Name="LayoutRoot" Background="White" MinWidth="300" MinHeight="300">
        <Grid.ColumnDefinitions>
                <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
                <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <c1:C1FlexGrid Margin="10" BorderBrush="Red" BorderThickness="1" Width="Auto" Height="Auto" HorizontalContentAlignment="Stretch" VerticalContentAlignment="Stretch">
            <c1:C1FlexGrid.Columns>
                <c1:Column Header="User Group" Width="*" /> 
            </c1:C1FlexGrid.Columns>
        </c1:C1FlexGrid>
    </Grid>

</navigation:Page>

这里我想要的是一个页面上的网格。页面的最小大小为300x300。当浏览器窗口展开时,我希望页面也随之展开,网格也随之展开,这样网格的所有边框都是从上/下/左/右开始的10。我已经尝试为布局网格的宽度/高度指定*,但仍然不起作用


谢谢

自动调整大小意味着“请根据我的内容调整大小”。这不会将您限制为父控件或浏览器的大小

您需要
Star
(*)大小调整,这基本上意味着“在扣除任何固定或自动列/行后,请根据星形大小的比率在任何星形大小的列/行之间分配剩余空间”

您还希望容器指定HorizontalAlignment=“Stretch”和VerticalAlignment=“Stretch”,以便可以确定分布到星形大小列/行的空间量(否则它将自行折叠)


如果你能发布你的XAML,我可以说得更具体。

当你说网格时,你是指DataGrid还是Grid?你能发布你的xaml吗?嗨-谢谢你的回复。我试着为网格的尺寸设置*大小(c1flexgrid控件),它抱怨“无法将字符串设置为长度”。C1flexgrid位于堆栈窗格中,这也不允许我应用*大小(它也发出呻吟)。用户控件本身(包含堆栈窗格和网格)也不喜欢*大小调整。我唯一设法应用它的地方是根布局的行定义,但这没有什么区别。我将尝试生成一个简化的示例并发布XAML。Hi HiTech Magic,我发布了一些简化的XAML来说明这个问题。如果你能看一下,我会非常感激的,因为我真的被困在这件事上了。干杯