xar*_*rzu 21 c# wpf xaml visual-studio-2010
如何在C#中为在WPF中的XAML中声明的矩形着色?
XAML中有一个矩形控件.在我的C#代码中,有时候填充背景颜色会很好.怎么做到这一点?
小智 35
对于所有懒惰的程序员,.net颜色枚举:
myRectangle.Fill = new SolidColorBrush(System.Windows.Media.Colors.AliceBlue);
Run Code Online (Sandbox Code Playgroud)
Bri*_*ndy 12
假设您将矩形命名为myRectangle,则可以使用Fill属性为其着色:
myRectangle.Height = 200;
myRectangle.Width = 200;
myRectangle.Stroke = new SolidColorBrush(Color.FromRgb(0, 111, 0));
myRectangle.Fill = new SolidColorBrush(Color.FromRgb(0, 111, 111));
Run Code Online (Sandbox Code Playgroud)
XAML for Windows Phone中的矩形颜色:
<Rectangle Width="480" Height="200">
<Rectangle.Fill>
<SolidColorBrush Color="Azure" />
</Rectangle.Fill>
</Rectangle>
Run Code Online (Sandbox Code Playgroud)
Rectangle blueRectangle = new Rectangle();
// Fill rectangle with blue color
blueRectangle.Fill = blueBrush;
Run Code Online (Sandbox Code Playgroud)
Wpf绑定可以做到这一点,而无需在代码中通过名称引用控件:
<Rectangle Width="480" Height="200" Fill="{Binding Path=FillColor}"/>
Run Code Online (Sandbox Code Playgroud)
然后在DataContext类上放置一个属性,假设您已实现了INotifyPropertyChanged:
public Brush FillColor
{
get { return this.fillColor; }
set
{
this.fillColor = value;
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以将所需的颜色分配给FillColor属性,UI将自行更新.
| 归档时间: |
|
| 查看次数: |
73162 次 |
| 最近记录: |