नीचे दिए गए एक्सएएमएल में, मेरे पास कभी-कभी फ़ोन के लिए मूल्य नहीं है। जब ऐसा होता है, तो मान गुम है, लेकिन TextBlock
अभी भी पैनल में स्थान पर कब्जा कर रहा है। मैं StackPanel
में जगह लेने से खाली TextBlock
एस छिपाना चाहता हूं।खाली टेक्स्टब्लॉक कैसे छिपाना है?
यहाँ XAML है:
<StackPanel>
<TextBlock Text="{Binding Path=FirstName}" />
<TextBlock Text="{Binding Path=LastName}" />
<TextBlock Text="{Binding Path=Phone}" />
<TextBlock Text="{Binding Path=Email}" />
</StackPanel>
मैं this article पढ़ा है, लेकिन उसे स्वीकार जवाब मेरे लिए काम नहीं करता है:
<StackPanel>
<TextBlock Text="{Binding Path=FirstName}" />
<TextBlock Text="{Binding Path=LastName}" />
<TextBlock Text="{Binding Path=Phone}">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<Trigger Property="Text" Value="{x:Null}">
<Setter Property="Visibility" Value="Collapsed" />
</Trigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<TextBlock Text="{Binding Path=Email}" />
</StackPanel>
मैंने कहीं एक गलती कर रहा हूँ, न ही स्वीकृत है गलत जवाब? मेरा लक्ष्य प्राप्त करने के लिए मुझे क्या करना चाहिए? , इसके बजाय सिर्फ इस के लिए एक शैली शुरू करने की
<TextBlock Text="{Binding Path=Title}">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Style.Triggers>
<DataTrigger Binding="{Binding Title}" Value="{x:Null}">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
एक फोन संपत्ति String.Empty या अशक्त जब यह या बनाई गई है नष्ट कर दिया है? –
यह शून्य है। समस्या हल हो गई है :) – Boris