<<>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和。 如果选择不同的
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++;
}
}