English 中文(简体)
WPF: How to reset / recalculate ScrollViewer “ScrollableHels”
原标题:WPF: How to reset / recalculate ScrollViewer "ScrollableHeight"
  • 时间:2009-08-31 12:46:19
  •  标签:

<<>Background:

我正在制作一个环境图。 这些环境储存在一个理论室内,因为所涉环境各异。

<<>Problem>:

<代码>ScrollableH8 of a ScrollViewer is not acurate to the volume of the content. 当<代码>ScrollViewer的内容修改ScrollableH8时,不再重新编号,而是在新内容的高度上加。

http://www.ohchr.org。

我在<代码>Grid内产生内容,该编码是<编码>ScrollViewer内的一个儿童要素。 内容为<代码>RowDefinitions,其中标有“密码”>、TextBlocks和。 如果选择不同的bject,以收回其财产,将清除格里德儿童,并重新制作显示其财产的不动产名称。 正如我前面在问题定义中提到的,所产生的内容高度附在<代码>后。 ScrollViewer sScrollableHviii/code> property.

www.un.org/Depts/DGACM/index_spanish.htm 我学到的东西:

我的第一项想法是,明确<代码>。 浏览器 <编码> 滚动式H8,每个浏览器加高,以实现正确的大小。 问题是,<代码>ScrollableH8不能设定(私人订货)。

<><>Code>:

XAML:

<ScrollViewer Name="svScroller"  Grid.Row="0">
    <Grid x:Name="gdPropertyGrid" Margin="10">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="35*" />
            <ColumnDefinition Width="65*" />
        </Grid.ColumnDefinitions>
    </Grid>
</ScrollViewer>

C#:

//Get Selected Item
var listBox = ((ListBox)sender);
var provider = listBox.SelectedItem as IProviderConfiguration;

if (provider != null)
{
    tbTitle.Text = String.Format("Properties for {0}",provider.Name);

    int rowCount = 0;

    PropertyGrid.Children.Clear();

    //Get properties
    foreach (var property in provider.Properties)
    {
        //Create Grid Row
        var rowDef = new RowDefinition() {Height = new GridLength(30)};
        PropertyGrid.RowDefinitions.Add(rowDef);

        //Create Name Label
        var tbPropertyName = new TextBlock { 
                Text = property.Key,
                VerticalAlignment = VerticalAlignment.Center 
        };

        //Create Value input
        var tbPropertyValue = new TextBox {
                Text = property.Value.ToString(), 
                VerticalAlignment = VerticalAlignment.Center
        };

        //Add TextBlock & TextBox Grid
        PropertyGrid.Children.Add(tbPropertyName);
        PropertyGrid.Children.Add(tbPropertyValue);

        //Set Grid.Row Attached property
        Grid.SetRow(tbPropertyName, rowCount);
        Grid.SetRow(tbPropertyValue, rowCount);

        Grid.SetColumn(tbPropertyValue, 1);

        rowCount++;
    }

 }
最佳回答
问题回答

我同意“六封信,从你对问题的描述来看,它同你一样试图对错误财产做些什么。 我不清楚你所期望的结果是什么,但我假定,你希望能够在同一滚动器中拥有不同数量的物品,并且能够按照需要加以扩大,以便在时间展示尽可能多的物品。

意见书。 “葡萄牙语”使你能够确定可见的面积,成为阅读/仪式财产,如果内容太大,可以自动出现滚动障碍。





相关问题
热门标签