2010-04-05 3 views
14

Как я могу проверить пустую строку в триггерахПустая строка Проверить в Trigger

<Trigger Property="Source" SourceName="ControlName" Value=""> 
    <Setter Property="Height" Value="0" TargetName="ControlName" /> 
</Trigger> 

Я установил высоту элемента управления в 0, если источник ImageControl пустая строка или не установлен? Как это сделать? В принципе Если изображение не установлено, я хочу скрыть управление изображением в шаблоне.

Заранее спасибо.

ответ

37

Кент является правильным, что источник не является строкой, но если у вас есть свойство жала, чтобы проверить против вы можете использовать статическое значение String.Empty:

Value="{x:Static sys:String.Empty}" 

и пространство имен SYS объявлен

xmlns:sys="clr-namespace:System;assembly=mscorlib" 
+0

Как я могу использовать это в проекте silverlight, поэтому static не поддерживается в silverlight – Eldho

+0

Спасибо за объявление пространства имен, это то, что мне нужно :) – Drarig29

3

Если имущество не установлено, его значение будет null. Чтобы указать null в XAML вы используете расширение разметки:

<Trigger Property="Source" SourceName="ControlName" Value="{x:Null}"> 
    <Setter Property="Height" Value="0" TargetName="ControlName" /> 
</Trigger> 
+0

спасибо за ваши комментарии, но я хочу, чтобы проверить на пустую строку, значит «» или string.Empty, как я могу проверить это? –

+0

Свойство «Источник» не является «строкой», это «ImageSource», поэтому то, что вы пытаетесь сделать, не имеет смысла. –

+0

Предположим, что у нас есть элементы управления, такие как textblock, label, у которого есть контент или свойство Text, которое имеет строку типа. то как мы можем проверить? –

Смежные вопросы