如何在Microsoft Expression Blend 4中更改C#中文本框的前景色

本文关键字:中文 文本 前景色 Microsoft Expression Blend | 更新日期: 2023-09-27 18:28:15

这是我第一次使用Microsoft Expression Blend。我的项目是Silverlight原型(sketchflow)。我有一个TextBox(TextBox=logUser),我想更改它的前景颜色。

我尝试了logUser.Foreground = Brushes.Black,这是我在另一篇文章中读到的(如何在Microsoft Expression Blend 4中以编程方式更改标签的文本颜色),但它不起作用。

如何在Microsoft Expression Blend 4中更改C#中文本框的前景色

Silverlight没有Brushes类,因此它会向您抛出一个错误。

我浏览了System.Windows.Media的定义,了解到它为您提供了一个继承自Brush 的SolidColorBrush

#region Assembly System.Windows.dll, v2.0.50727
using System.Windows;
using System.Windows.Markup;
namespace System.Windows.Media
{
    // Summary:
    //     Paints an area with a solid color.
    [ContentProperty("Color", true)]
    public sealed class SolidColorBrush : Brush
    {
        // Summary:
        //     Identifies the System.Windows.Media.SolidColorBrush.Color dependency property.
        //
        // Returns:
        //     The identifier for the System.Windows.Media.SolidColorBrush.Color dependency
        //     property.
        public static readonly DependencyProperty ColorProperty;
        // Summary:
        //     Initializes a new instance of the System.Windows.Media.SolidColorBrush class
        //     with no color.
        public SolidColorBrush();
        //
        // Summary:
        //     Initializes a new instance of the System.Windows.Media.SolidColorBrush class
        //     with the specified System.Windows.Media.Color.
        //
        // Parameters:
        //   color:
        //     The color to apply to the brush.
        public SolidColorBrush(Color color);
        // Summary:
        //     Gets or sets the color of this System.Windows.Media.SolidColorBrush.
        //
        // Returns:
        //     The brush's color. The default value is System.Windows.Media.Colors.Transparent.
        public Color Color { get; set; }
    }
}

因此,为了实现你想要的,你必须使用SolidColorBrush,如下所示:

logUser.Foreground = new SolidColorBrush(Colors.Black);