更改网格可见性属性



我正在为UWP编写应用程序。

我有这个xaml:

    <ScrollViewer HorizontalAlignment="Left" Height="668" Margin="63,52,0,0" VerticalAlignment="Top" Width="350">
        <GridView   x:Name="OrdersGridView" IsItemClickEnabled="True" >
            <GridView.ItemTemplate>
                <DataTemplate>
                    <StackPanel >
                        <Grid  Height="204" BorderBrush="#FFFBF8F8" BorderThickness="0,0,1,1">
                            <TextBlock Text="{Binding date_created}"  HorizontalAlignment="Left" TextAlignment="Center" TextWrapping="Wrap"  VerticalAlignment="Top" Width="350" Height="50" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  TextAlignment="Center"  HorizontalAlignment="Left" Margin="0,146,-1,0" TextWrapping="Wrap" Text="{Binding billing.address_1}" VerticalAlignment="Top" Height="58" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  HorizontalAlignment="Left" TextAlignment="Center" Margin="0,86,-1,0" TextWrapping="Wrap" Text="{Binding billing.first_name}" VerticalAlignment="Top" Height="60" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" Padding="0,0,0,0"/>
                        </Grid>
                    </StackPanel>
                </DataTemplate>
            </GridView.ItemTemplate>
        </GridView>
    </ScrollViewer>
    <Grid x:Name="DetailGrid" HorizontalAlignment="Left" Height="667" Margin="415,53,-2,0" VerticalAlignment="Top" Width="867">
        <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="390,172,0,0" VerticalAlignment="Top"/>

    </Grid>


</Grid>

我将DetailGrid.Visibility = Visibility.Collapsed设置为.cs中的<Grid x:Name="DetailGrid"网格

我需要改变它为Visible当我点击GridView中的元素。

我怎么能做到呢?

谢谢大家的帮助。

我找到答案了

这里是xaml:

   <GridView   x:Name="OrdersGridView" IsItemClickEnabled="True"
          SelectionMode="Single" ItemClick="OrdersGridView_ItemClick" 
           >
            <GridView.ItemTemplate>
                <DataTemplate>
                    <StackPanel >
                        <Grid x:Name="GridInf" Tapped="Grid_Tapped"  Height="204" BorderBrush="#FFFBF8F8" BorderThickness="0,0,1,1">
                            <TextBlock Text="{Binding date_created}"  HorizontalAlignment="Left" TextAlignment="Center" TextWrapping="Wrap"  VerticalAlignment="Top" Width="350" Height="50" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  TextAlignment="Center"  HorizontalAlignment="Left" Margin="0,146,-1,0" TextWrapping="Wrap" Text="{Binding billing.address_1}" VerticalAlignment="Top" Height="58" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  HorizontalAlignment="Left" TextAlignment="Center" Margin="0,86,-1,0" TextWrapping="Wrap" Text="{Binding billing.first_name}" VerticalAlignment="Top" Height="60" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" Padding="0,0,0,0"/>
                        </Grid>
                    </StackPanel>
                </DataTemplate>
            </GridView.ItemTemplate>
        </GridView>
    </ScrollViewer>
    <Grid x:Name="DetailGrid" HorizontalAlignment="Left" Height="667" Margin="415,53,-2,0" VerticalAlignment="Top" Width="867">
        <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="390,172,0,0" VerticalAlignment="Top"/>

    </Grid>

下面是activity的代码:

 private void Grid_Tapped(object sender, TappedRoutedEventArgs e)
    {
        DetailGrid.Visibility = Visibility.Visible;
    }

我是这样做的:

XAML: Add selection changed eventandler

<ScrollViewer HorizontalAlignment="Left" Height="668" Margin="63,52,0,0" VerticalAlignment="Top" Width="350">
        <GridView   x:Name="OrdersGridView" IsItemClickEnabled="True" Selection_Changed="OrdersGridView_SelectionChanged">
            <GridView.ItemTemplate>
                <DataTemplate>
                    <StackPanel >
                        <Grid  Height="204" BorderBrush="#FFFBF8F8" BorderThickness="0,0,1,1">
                            <TextBlock Text="{Binding date_created}"  HorizontalAlignment="Left" TextAlignment="Center" TextWrapping="Wrap"  VerticalAlignment="Top" Width="350" Height="50" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  TextAlignment="Center"  HorizontalAlignment="Left" Margin="0,146,-1,0" TextWrapping="Wrap" Text="{Binding billing.address_1}" VerticalAlignment="Top" Height="58" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" />
                            <TextBlock  HorizontalAlignment="Left" TextAlignment="Center" Margin="0,86,-1,0" TextWrapping="Wrap" Text="{Binding billing.first_name}" VerticalAlignment="Top" Height="60" Width="350" FontFamily="SF UI Display" FontSize="25" FontWeight="Light" Foreground="White" Padding="0,0,0,0"/>
                        </Grid>
                    </StackPanel>
                </DataTemplate>
            </GridView.ItemTemplate>
        </GridView>
    </ScrollViewer>

和c#代码:

private void OrdersGridView_SelectionChanged(object sender, SelectionChangedEventArgs e)
{
    DetailGrid.Visibility = Visibility.Visible;
}

最新更新