如何访问Windows Phone 7中stackpanel内部的控件?

时间:2011-10-14 18:23:18

标签: c# windows-phone-7

我设计页面下面的代码。

<ScrollViewer VerticalScrollBarVisibility="Visible" Grid.Row="1" x:Name="svProduct">
            <StackPanel>
                <ItemsControl  x:Name="lstSearchResult" ItemsSource="{Binding Path=PIProductList}">
                    <ItemsControl.ItemTemplate>
                        <DataTemplate>
                            <StackPanel Width="480" Style="{Binding CellStyle}" Orientation="Horizontal" VerticalAlignment="Center" Height="50" >
                                <TextBlock Foreground="Black" FontSize="20" Width="320" FontFamily="Tahoma" Margin="10,0,0,0" Text="{Binding Title}" VerticalAlignment="Center" TextWrapping="Wrap"></TextBlock>
                                <Button Name="btnBookmark" Click="btnBookmark_Click" Tag="{Binding}" Background="Transparent">
                                    <Button.Content>
                                        <Image Source="/Images/bookmarks_red.png" Width="33" Height="30" VerticalAlignment="Top" Margin="-15"></Image>
                                    </Button.Content>
                                </Button>
                                <Button BorderThickness="0" x:Name="btnSubmit" Click="btnSubmit_Click" Background="Transparent" Tag="{Binding}" >
                                    <Button.Content>
                                        <Image Name="ram" Source="/Images/blue_arrow.png" Width="40" Height="40" VerticalAlignment="Top" Margin="-15"></Image>
                                    </Button.Content>
                                </Button>
                            </StackPanel>
                        </DataTemplate>
                    </ItemsControl.ItemTemplate>
                </ItemsControl>
            </StackPanel>
        </ScrollViewer>

我想访问btnBookmark visuble false。

无法访问btnBookmark.Visibility = Visibility.collapsed

怎么做?

请帮帮我............

1 个答案:

答案 0 :(得分:1)

我知道这样做的最好方法是在项目ViewModel(绑定到ItemsControl中每一行的项目)上创建一个Visiblity属性,并根据每个项目的更改切换该值,可能是通过切换每行按钮。我不知道为这些内部控件“循环和查看”的好方法。您最好使用现有的数据绑定基础架构来为您管理。