У меня есть то, что я считал простым требованием, но мне трудно понять, как это сделать.
Я привязываюсь к адресу (Line1, Line2, Line3, Line4 например)
Что я хочу сделать, это показать
Line1
Line2
Line3
Line4
Но если какая-либо строка пуста или равна нулю, я бы хотел «свернуть»:
Line1
Line3
Line4
Я пробовал StackPanel с TextBlocks, но я не понял, как заставить TextBlocks «исчезнуть», если они пусты.
<StackPanel>
<TextBlock Text="{Binding Line1}"></TextBlock>
<TextBlock Text="{Binding Line2}"></TextBlock>
<TextBlock Text="{Binding Line3}"></TextBlock>
<TextBlock Text="{Binding Line4}"></TextBlock>
</StackPanel>
Я также пробовал MultiBinding, но не могу понять, как получить новую строку в StringFormat.
<TextBlock>
<TextBlock.Text>
<!-- Doesn't work: "System.FormatException" -->
<MultiBinding StringFormat="{}{1}\n{2}\n{3}\n{4}">
<Binding Path="Line1"/>
<Binding Path="Line2"/>
<Binding Path="Line3"/>
<Binding Path="Line4"/>
</MultiBinding>
</TextBlock.Text>
</TextBlock>
Любые идеи?