Проверьте, есть ли у Image источник в XAML - PullRequest
1 голос
/ 31 января 2012

У меня есть следующие строки XAML:

<extToolkit:BusyIndicator IsBusy="<image source not set>">
    <Image Source="{Binding FirstSideImage,
                            Converter={StaticResource bitmapConverter}}" />
</extToolkit:BusyIndicator>

Я бы хотел, чтобы свойство BusyIndicator * IsBusy зависело от доступности Image 's Source собственность.Поэтому, если источника изображения нет, IsBusy должно быть true, в противном случае false.

Возможно ли это как-то?Конечно, я мог бы иметь отдельное свойство в моей модели представления, которое делает то же самое, но я хотел бы знать, могу ли я получить это непосредственно из изображения.

1 Ответ

1 голос
/ 31 января 2012

Вы можете применить стиль к BusyIndicator, предполагая, что Image - это Content (я не знаком с элементом управления):

<extToolkit:BusyIndicator>
    <extToolkit:BusyIndicator.Style>
        <Style TargetType="extToolkit:BusyIndicator">
            <Setter Property="IsBusy" Value="False" />
            <Style.Triggers>
                <DataTrigger Binding="{Binding Content.Source, RelativeSource={RelativeSource Self}}"
                        Value="{x:Null}">
                    <Setter Property="IsBusy" Value="True" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </extToolkit:BusyIndicator.Style>
    <Image Source="{Binding FirstSideImage,
            Converter={StaticResource bitmapConverter}}" />
</extToolkit:BusyIndicator>

Вы также можете напрямую использоватьсвязать в триггере и применить конвертер, который превращает null в true.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...