controls:TextBoxHelper.IsWaitingForData 有什么作用?

What does controls:TextBoxHelper.IsWaitingForData do?

我有一个使用 mahapp.metro 进行样式设置的小型 WPF 应用程序。 window 中有 7 个文本框,代码类似于下面的示例。当我运行申请的时候,需要很多cpu,如果可能超过90%。当我删除 controls:TextBoxHelper.IsWaitingForData="True" 时,cpu 使用率下降到几乎 0%,而且我没有发现任何问题。 TextBoxHelper.IsWaitingForData 的真正含义是什么?

<Canvas Grid.Column="0" Grid.Row="1">
            <TextBox x:Name="SecurityStatusTextBox" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Top" IsReadOnly="True" Text="{Binding SelectedSecurityStatus, Mode=OneWay}"
                     Margin="50,50,0,0" Height="50" Width="250" FontSize="16"
                     controls:TextBoxHelper.ClearTextButton="True" 
                     controls:TextBoxHelper.IsWaitingForData="True" 
                     controls:TextBoxHelper.UseFloatingWatermark="True" 
                     controls:TextBoxHelper.Watermark="{x:Static properties:Resources.SecurityStatus}"/>
            <TextBox x:Name="BagTypeTextBox" HorizontalAlignment="Left" TextWrapping="Wrap" VerticalAlignment="Top" IsReadOnly="True" Text="{Binding SelectedBagType, Mode=OneWay}"
                     Margin="325,50,0,0" Height="50" Width="250" FontSize="16"
                     controls:TextBoxHelper.ClearTextButton="True" 
                     controls:TextBoxHelper.IsWaitingForData="True" 
                     controls:TextBoxHelper.UseFloatingWatermark="True"
                     controls:TextBoxHelper.Watermark="{x:Static properties:Resources.BagType}"/>
        </Canvas>

IsWaitingForData 属性 设置为真时,Effect 应用于 TextBox 的边框,动画应用于 Opacity 属性: https://github.com/MahApps/MahApps.Metro/blob/8a87a1b6ee7376e22930e465e8f3e85f4c5a73bc/src/MahApps.Metro/MahApps.Metro/Styles/Controls.TextBox.xaml

如果您注意,当 IsWaitingForData 属性 设置为 true 时,您会看到 TextBox 有一个淡入淡出的轻微阴影。

如果这会给您带来任何问题,您应该将 属性 设置回 false

您可能还想在 GitHub 报告问题:https://github.com/MahApps/MahApps.Metro/issues