WPF - TabItem加载之前的预加载图像或模板

时间:2011-08-05 17:39:57

标签: wpf data-binding controls wpfdatagrid wpftoolkit

我在TabContorol中有一个绑定到数据库的列表框,加载需要一些时间。我希望在TabItem和listbox加载之前显示预加载图像或模板,并且在加载完成后,预加载图像为diasapear。帮帮我PLZ

1 个答案:

答案 0 :(得分:2)

我会在ListBox.Style中使用Trigger,如果ItemSource为null,我会使用Loading Image而不是常规ListBox模板重写ListBox.Template

以下是一个例子:

<Style TargetType="{x:Type ListBox}">
    <Style.Triggers>
        <DataTrigger Property="{Binding MyList}" Value="{x:Null}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type ListBox}">
                        <Image Source="loadingImage.gif" />
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </DataTrigger>
    </Style.Triggers>
</Style>

我没有通过编译器运行它,所以我可能会有一些语法错误,但它应该指向正确的方向。