2017-11-17 17 views
0

私はUWPアプリケーションを開発しています。私はラジオボタンをクリックすると、メインページと設定ページの背景を変更したいと思っています。下のラジオボタンのコードは、私がラジオボタンを選択して、それはそれはしていないようGreen.Howeverする設定とメインページの背景を変更持つようにしようとしている。この例ではSettings.xaml.cs背景色を変更するボタン

private void BGRadioButtonGreen_Checked(object sender, RoutedEventArgs e) 
    { 
     MainPage.Background = Brushes.Red??; 
    } 

であります働いている。事前に感謝します

答えて

0

あなたはルートグリッドの背景色を設定することができます。下の例のように、ラジオボタンのチェック後、色は赤に変わります。これはあなたが探しているものでなければなりません。背景色を変更するための

<Page 
x:Class="Test.MainPage" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
xmlns:local="using:Test" 
xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
mc:Ignorable="d" Background="Blue"> 

<Grid x:Name="MainGrid" Background="Green"> 
    <StackPanel> 
     <RadioButton Content="Red" Tag="Green" Checked="RadioButton_Checked"/> 
    </StackPanel> 
</Grid> 

private void RadioButton_Checked(object sender, RoutedEventArgs e) 
{ 
    MainGrid.Background = new SolidColorBrush(Windows.UI.Colors.Red); 
} 
0

@ColdMorningLightが述べたように、あなたはBackgroundプロパティにSolidColorBrush値を設定する必要があります。

あなたが別のページにあるSettingsページからMainPage背景色を変更しようとしているので、あなたも、まず現在のMainPageインスタンスを取得し、ページの背景を設定する必要があります。例えば:私はページの背景色を設定し

MainPage mainPage; 
public SettingPage() 
{ 
    this.InitializeComponent(); 
    mainPage = (Window.Current.Content as Frame).Content as MainPage; 
} 

private void radchangecolor_Checked(object sender, RoutedEventArgs e) 
{ 
    mainPage.Background = new SolidColorBrush(Windows.UI.Colors.Green); 
} 

ご注意ください、あなただけのルートパネルの背景色が透明であるときの効果を見ることができます(デフォルト値はBackground="{ThemeResource ApplicationPageBackgroundThemeBrush}"です)。それ以外の場合は、ルートパネルの背景色を変更する必要があります。たとえば、MainPageは次のようになります。

<Page 
    ... 
    mc:Ignorable="d" > 
    <StackPanel> 
     <Frame x:Name="frame" Height="200" Width="300" Background="Azure"></Frame> 
     <Button x:Name="btntest" Click="btntest_Click" Content="test"></Button> 
    </StackPanel> 
</Page> 
関連する問題