Я бы использовал Триггер в ListBox.Style
, и если ItemSource имеет значение null, я бы переписал ListBox.Template
, используя загрузочное изображение вместо обычного шаблона ListBox.
Вот пример:
<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>
Я не запускал это через компилятор, поэтому у меня могут быть некоторые синтаксические ошибки, но это должно указать вам правильное направление.