0

Telerik コントロールの RadTextBox を使用して Win Phone 8 SDK 用のアプリを開発しています。さまざまなテーマの前景色を変更する必要があります-暗い/明るい。

私のxmlで:

<phone:PhoneApplicationPage xmlns:Controls="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.Primitives" 
x:Class="PanicMe.OptionPages.ProfilePage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:telerikCore="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Core"
xmlns:controls="clr-namespace:PanicMe.Controls"
                        FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True">


<Controls:RadTextBox Grid.Row="0" HorizontalAlignment="Stretch" 
 Text="{Binding FirstName, Mode=TwoWay}" ClearButtonVisibility="Visible" 
 Watermark="First Name" />

私の xml.cs で:

    public ProfilePage()
    {
        Resources.Remove("PhoneForegroundBrush");
        Resources.Add("PhoneForegroundBrush", System.Windows.Media.Colors.Red);
        // THIS BELOW LINE SHOWS ERROR
        //((System.Windows.Media.SolidColorBrush)Resources["PhoneForegroundBrush"]).Color = System.Windows.Media.Colors.Magenta;

        InitializeComponent();

        Resources.Remove("PhoneForegroundBrush");
        Resources.Add("PhoneForegroundBrush", System.Windows.Media.Colors.Red);
    }

PhoneForegroundBrush の値を設定するさまざまな方法を試しましたが、出力結果に違いは見られません。私が直面している問題は、暗い/明るいテーマにあります。すべての場合に機能するように(テキストボックス内のテキストが表示されるように)1つの色を設定するにはどうすればよいですか。

私は WinPhone8 開発の初心者です。最善を尽くしてください。

ありがとう

4

1 に答える 1

0

私は、PHONEFOREGROUNDbRUSH を使用する代わりに、PhoneAccentBrush を使用しています。これはテキストボックスのトリックを行いました。

テキストが同じ色で書かれている場合、フォーカスがあるときの TextBox の背景は電話の前景色になり、表示されません。したがって、前景色を PhoneAccentBrush 値に変更しました。これにより、すべての場合にテキストが表示されるようになります。

そして、それはトリックをしました。

これが誰かに役立つことを願っています。

于 2013-11-12T10:55:13.280 に答える