【问题标题】:silverlight resize datagrid datagridsplittersilverlight 调整数据网格的大小 datagridsplitter
【发布时间】:2011-06-21 20:14:33
【问题描述】:

我正在尝试使用 gridsplitter 来调整网格行的大小,但我没有得到预期的行为。

    <Grid x:Name="LayoutRoot" Background="White" Width="300">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>
    <StackPanel Grid.Row="0">
        <StackPanel Orientation="Horizontal">
            <TextBlock Height="23" Text="Inventory:"/>
        </StackPanel>
        <sdk:DataGrid AutoGenerateColumns="False" Height="Auto" Name="dataGrid1" HorizontalAlignment="Left"  IsReadOnly="True" >
            <sdk:DataGrid.Columns>
                <sdk:DataGridTextColumn Binding="{Binding Name}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Width="Auto" Header="Name" IsReadOnly="True" />
                <sdk:DataGridTextColumn Binding="{Binding CreatedDate}" Header="Created Date" />
                <sdk:DataGridTextColumn Binding="{Binding ChangedDate}" Header="Last Edited" />
            </sdk:DataGrid.Columns>
        </sdk:DataGrid>
    </StackPanel>        
    <sdk:GridSplitter Grid.Row="1" Height="10" Width="300"  HorizontalAlignment="Stretch"/>
    <Grid Grid.Row="2"></Grid>
</Grid>

分离器移动前

分离器移动后

我希望数据网格调整其内容的大小,调整大小时应在其中显示滚动条。

【问题讨论】:

    标签: silverlight datagrid resize


    【解决方案1】:

    问题是您在StackPanel 中有DataGrid。垂直方向的堆栈面板没有垂直边界,因此数据网格呈现其全高而不知道它将被剪裁。您应该使用另一个 Grid 来获得您想要的结果:-

       <Grid x:Name="LayoutRoot" Background="White" Width="300">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto"/>
            <RowDefinition Height="Auto"/>
        </Grid.RowDefinitions>
        <Grid Grid.Row="0">
           <Grid.RowDefinitions>
               <RowDefinition Height="Auto" />
               <RowDefinition Height="*" />
           </Grid.RowDefinitions>
           <TextBlock Grid.Row="0" Height="23" Text="Inventory:"/>
           <sdk:DataGrid Grid.Row="1" AutoGenerateColumns="False" Name="dataGrid1" HorizontalAlignment="Left"  IsReadOnly="True" >
                <sdk:DataGrid.Columns>
                    <sdk:DataGridTextColumn Binding="{Binding Name}" CanUserReorder="True" CanUserResize="True" CanUserSort="True" Width="Auto" Header="Name" IsReadOnly="True" />
                    <sdk:DataGridTextColumn Binding="{Binding CreatedDate}" Header="Created Date" />
                    <sdk:DataGridTextColumn Binding="{Binding ChangedDate}" Header="Last Edited" />
                </sdk:DataGrid.Columns>
            </sdk:DataGrid>
        </Grid>        
        <sdk:GridSplitter Grid.Row="1" Height="10" Width="300"  HorizontalAlignment="Stretch"/>
        <Grid Grid.Row="2"></Grid>
    </Grid>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-16
      • 2012-12-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-24
      相关资源
      最近更新 更多