0

我有一个具有颜色类型属性的 LayoutAwarePage - “MyColor”。我在页面中添加了一个简单的控件,例如 Rectangle 或 TextBox,并将控件的背景限定为 MyColor。我将 MyColor 设置为黑色、白色、红色等 - 这些都不起作用。无论我做什么,控件都保持黑色。如何解决这个问题?

我听从了你的建议,成功了,谢谢!我还尝试将下一个样式添加到页面:

<Grid.Resources>
            <ResourceDictionary>
                <Style TargetType="a:MyTextBlock">
                    <Setter Property="Background" Value="{Binding TextBlockBackgroundColor}"></Setter>
                   <Setter Property="BorderBrush" Value="{Binding TextBlockBorderColor}"></Setter>
                   <Setter Property="Width" Value="200"></Setter>
                   <Setter Property="IsReadOnly" Value="False"></Setter>
                   <Setter  Property="BorderBrush" Value="3" ></Setter>
               </Style>
           </ResourceDictionary>
      </Grid.Resources>

现在我看不到 MyTextBlock 类型的控件...

这是为什么?

4

1 回答 1

1

您必须绑定withFill而不是. 请参阅下面的代码。RectangleSolidColorBrushColor

视图模型.cs

public class viewModel
{
    public Color color { get; set; }
    public viewModel(Color _color)
    {
        color = _color;
    }
    public SolidColorBrush MyColor
    {
        get
        {
            return new SolidColorBrush(color);
        }
    }
}

BlankPage1.xaml.cs

public BlankPage1()
{
    this.InitializeComponent();
    DataContext = new viewModel(Colors.Red);
}

XAML

<Rectangle Height="100" Width="100" Fill="{Binding MyColor}" />
于 2013-08-14T18:33:02.363 回答