繁体   English   中英

绑定到布尔属性时设置TextBlock的默认值

[英]Setting Default Value of TextBlock when binding to Boolean Property

我将文本块绑定到布尔属性。 我正在尝试做的事情-如果为false我希望该值处于In Progress如果为true我希望其为Completed

我在WPF应用程序中使用C#,并且文本块是树视图的一部分。

<DataTemplate>
 <Grid>
   <Grid.ColumnDefinitions>
     <ColumnDefinition></ColumnDefinition>
     <ColumnDefinition></ColumnDefinition>
    </Grid.ColumnDefinitions>
     <TextBlock Grid.Column="0" FontFamily="Sagoe UI" FontSize="14" Text="{Binding Path=BaseNumber, StringFormat='Device Number {0}.'}" Padding="2" Width="200" />
     <TextBlock Grid.Column="1" FontFamily="Sagoe UI" FontSize="14" Text="{Binding Path=BaseMode}" Padding="2" />
 </Grid>
</DataTemplate>

我想为其设置值的是与BaseMode绑定的TextBlock。

谢谢!

不要绑定Text而是在Style设置DataTriggers ,然后依次将您想要的Text设置为true / false。 (还请注意不要覆盖样式的优先级

您可以使用的是ValueConverter。 查看以下教程是否对您有帮助:

http://wpftutorial.net/ValueConverters.html

http://drwpf.com/blog/category/value-converters/

 <TextBlock Grid.Column="1" FontFamily="Sagoe UI" FontSize="14" Padding="2" >
            <TextBlock.Style>
                <Style TargetType="TextBlock" >
                    <Setter Property="Text" Value="In Progress"/>
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding BaseMode}" Value="true">
                           <Setter Property="Text" Value="Completed"/>
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </TextBlock.Style>
  </TextBlock>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM