2010-05-22 39 views

回答

-3

,對工作方式我要有一個嵌入式文本塊,並將背景更改爲文本塊。

+3

這看起來像一個醜陋的黑客,考慮到有更清晰和更好的方法來實現這一點。 – benPearce 2013-08-15 23:10:10

+1

這太可怕了。考慮一些其他解決方案作爲真正的答案 – 2014-05-08 19:23:41

3
Rectangle blueRectangle = new Rectangle(); 
// Fill rectangle with blue color 
blueRectangle.Fill = blueBrush; 
+0

矩形內嵌有文本塊。填充工程爲整個矩形着色,但它也阻止了文本。另一方面,使用筆觸首先着色矩形,我可以修改封閉的測試,但矩形沒有邊界。你能建議嗎? – xarzu 2010-05-22 07:35:41

+0

筆畫是矩形的邊框,填充是矩形的內部。如果矩形內有文本塊,如何在不擦除文本塊的情況下填充矩形的彩色背景? – xarzu 2010-05-24 15:01:33

4

將您的XAML中的x:Name屬性設置爲您想要在您的c#代碼中引用矩形的內容。然後,您可以訪問所有的代碼矩形的特性,如whateverYouNamedIt.Fill

+0

矩形內嵌有文本塊。填充工程爲整個矩形着色,但它也阻止了文本。另一方面,使用筆觸首先着色矩形,我可以修改封閉的測試,但矩形沒有邊界。你能建議嗎? – xarzu 2010-05-22 11:25:29

11

假設你命名你的矩形myRectangle,您可以使用填充屬性color它:

myRectangle.Height = 200; 
myRectangle.Width = 200; 
myRectangle.Stroke = new SolidColorBrush(Color.FromRgb(0, 111, 0)); 
myRectangle.Fill = new SolidColorBrush(Color.FromRgb(0, 111, 111)); 
+0

矩形內嵌有文本塊。填充工程爲整個矩形着色,但它也阻止了文本。另一方面,使用筆觸首先着色矩形,我可以修改封閉的測試,但矩形沒有邊界。你能建議嗎? – xarzu 2010-05-22 11:25:44

+0

描邊用於矩形的邊框,填充用於矩形的內部。如果矩形內有文本塊,如何在不擦除文本塊的情況下填充矩形的彩色背景? – xarzu 2010-05-24 15:02:38

28

對於所有的懶惰的程序員,在.NET顏色枚舉:

myRectangle.Fill = new SolidColorBrush(System.Windows.Media.Colors.AliceBlue); 
+0

更好:'myRectangle.Fill = System.Windows.Media.Brushes.AliceBlue;' – 2017-05-12 21:09:24

+0

我在這裏搜索這個答案與UWP/UWA(通用Windows平臺)有關。僅供參考 - 顏色現在可以在Windows.UI.Colors.AliceBlue – raddevus 2017-12-28 20:12:45

7

矩形的顏色在XAML爲Windows Phone的:

<Rectangle Width="480" Height="200"> 
    <Rectangle.Fill> 
     <SolidColorBrush Color="Azure" /> 
    </Rectangle.Fill> 
</Rectangle> 
+1

這是使用XAML而不是C# – Brad 2013-08-15 22:09:49

3

WPF結合將能夠做到這一點,而不必引用在代碼中的名稱控制:

<Rectangle Width="480" Height="200" Fill="{Binding Path=FillColor}"/> 

然後把一個屬性放在你的DataContext類,假設你已經實現了INotifyPropertyChanged的:

public Brush FillColor 
{ 
    get { return this.fillColor; } 
    set 
    { 
    this.fillColor = value; 
    if (PropertyChanged != null) 
    { 
     PropertyChanged(this, new PropertyChangedEventArgs(propertyName)); 
    } 
    } 
} 

然後您可以將您需要的顏色分配給FillColor屬性和用戶界面將自動更新。

相關問題