Windows phone 7 如何使网格在Windows Phone上可滚动?
我需要使我的网格可滚动。我有一个网格控件,它最终将保存30-40行数据。我用代码动态填充/创建这些行。每次这些行在屏幕上渲染时,它们都会尝试适应我为网格设置的高度。我尝试在scrollviewer中包装我的网格,但没有成功。我想远离列表框,因为文本会错位。以下是我构建网格的XAML代码:Windows phone 7 如何使网格在Windows Phone上可滚动?,windows-phone-7,Windows Phone 7,我需要使我的网格可滚动。我有一个网格控件,它最终将保存30-40行数据。我用代码动态填充/创建这些行。每次这些行在屏幕上渲染时,它们都会尝试适应我为网格设置的高度。我尝试在scrollviewer中包装我的网格,但没有成功。我想远离列表框,因为文本会错位。以下是我构建网格的XAML代码: <ScrollViewer Canvas.Left="56" Canvas.Top="354"> <Grid x:Name="grdWeather"
<ScrollViewer Canvas.Left="56" Canvas.Top="354">
<Grid x:Name="grdWeather" Canvas.Left="56" Canvas.Top="354" Width="371" ShowGridLines="True" Background="#FFDCB3B3" ScrollViewer.VerticalScrollBarVisibility="Visible" MaxHeight="196">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="100"/>
</Grid.ColumnDefinitions>
</Grid>
</ScrollViewer>
下面是我创建行的代码:
for (int t = 0; t <= 30; t++)
{
RowDefinition row1 = new RowDefinition();
grdWeather.RowDefinitions.Add(row1);
TextBlock txtTime = new TextBlock();
txtTime.Text = time;
txtTime.SetValue(Grid.RowProperty, t);
txtTime.SetValue(Grid.ColumnProperty, 0);
txtTime.Width = 100;
grdWeather.Children.Add(txtTime);
TextBlock txtTemp = new TextBlock();
txtTemp.Text = time;
txtTemp.Width = 100;
txtTemp.SetValue(Grid.RowProperty, t);
txtTemp.SetValue(Grid.ColumnProperty, 1);
grdWeather.Children.Add(txtTemp);
}
for(int t=0;t使用列表框肯定是一个更好的主意。代码的问题是网格上的MaxHeight=196。删除它会起作用