2014-12-21 19 views
-2

我正在使用Visual Stuio 2013專業版在C#和XAML(不是WPF)中創建Windows應用商店應用程序。更改texbox的前景文本

我已經有一個if語句使程序將能夠執行此功能

if (TextBoxForRainbow.Text=="rainbow" || TextBoxForRainbow.Text=="Rainbow") 
{ 
    RainbowButton.Opacity = 100; 
} 

我已經探索了方法,如: TextBoxForRainbow.Foreground =新的SolidColorBrush(顏色:「紅色」);但無濟於事 我發現在這裏談論這種方法的鏈接是Programmatically set TextBlock Foreground Color

是否有我需要插入以完成此功能的特定命名空間或引用?

我想要的是,當用戶在texbox中輸入正確的文本時,在這種情況下是「彩虹」,我希望文本更改爲綠色。

+0

你構建Windows Store應用? –

+0

我編輯過你的標題。請參閱:「[應該在其標題中包含」標籤「](http://meta.stackexchange.com/questions/19190/)」,其中的共識是「不,他們不應該」。 –

+0

是的Windows應用商店:) – surjudpphu

回答

0

在你的榜樣,你提到你嘗試

TextBoxForRainbow.Foreground new SolidColorBrush(color: "red"); 

這不會工作,SolidColorBrush的構造函數需要一個Color,而不是一個字符串。

這裏是我的返工例如:

XAML

<StackPanel Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> 
    <TextBox x:Name='TextBoxForRainbow' 
      TextChanged='TextBoxForRainbow_TextChanged' 
      Text='Demo' /> 
</StackPanel> 

代碼

private void TextBoxForRainbow_TextChanged(object sender, TextChangedEventArgs e) { 
    if (String.Equals(TextBoxForRainbow.Text, 
        "rainbow", 
        StringComparison.CurrentCultureIgnoreCase)) 
    { 
    TextBoxForRainbow.Foreground = new SolidColorBrush(Windows.UI.Colors.Green); 
    } 
} 

Screenshot

+0

非常感謝您的洞察力。這工作完美。 – surjudpphu

相關問題