在itemscontrol绑定完成后设置WPF图像可见(Windows 8样式异步)

时间:2012-11-22 17:35:13

标签: wpf xaml binding asynchronous windows-8

我创建了一个用户控件,在stackpanel中显示一个图像,然后是一个itemcontrol:

<StackPanel Orientation="Horizontal">
    <Image x:Name="ActorIcon" Source="ms-appx:///Assets/Content/actors.png"/>
    <ItemsControl x:Name="ActorList" ItemsSource="{Binding}">
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <StackPanel Orientation="Horizontal"/>
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <StackPanel Orientation="Horizontal">
                    <TextBlock Text="{Binding Name}" Margin="5,0,0,0"/>
                </StackPanel>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
</StackPanel>

绑定是通过异步方法设置的(可能需要几秒钟) 我正在寻找隐藏图像的方法,直到绑定完成。

感谢。

1 个答案:

答案 0 :(得分:0)

Image的默认展示次数设置为Collapsed

<Image x:Name="ActorIcon" Source="ms-appx:///Assets/Content/actors.png" Visibility="Collapsed"/>

在您的async函数

await getSomeData();
ActorIcon.Visibility = Visibility.Visible;
在项目加载后,

Image将会显示。