Я сделал переключатель, на котором программа должна менять все фоны элементов-гигов. Поэтому я сделал новый чейнджера класс (View Model), который обращается каждый файл XAML и изменяет цвет фона:Доступ к элементам XAML извне класса
TheView1.xaml: (частичный)
<ScrollView
x:Name="myScrollView" [...]
TheView1.xaml.cs : (частичные)
void switch_Toggled(object sender, ToggledEventArgs e)
{
if (themeSwitch.IsToggled)
{
ChangeBackground.ChangeColor();
}
}
ChangeBackgrounds.cs
public static class ChangeBackground
{
TheView1 tv1 = new TheView1();
public static void ChangeColor()
{
tv1.myScrollView.BackgroundColor = [...];
tv1.myButton.BackgroundColor = [...];
}
}
VS тогда говорит: «tv1 не содержит определения для myScrollView и myButton». Но они явно там, почему это не работает?
Таким образом, вы получили новый экземпляр TheView1 в классе ChangeBackground, но вам нужна ссылка на существующий TheView1 – Luca
так передать его? –
yes Пропустите его (даже если это не очень хороший подход) –