c# - 如何设置传递给另一个类的类的属性值?
问题描述
我有一个看起来像这样的应用程序:
public partial class MainPage : TabbedPage
{
public bool DarkTheme
{
get { return _darkTheme; }
set { _darkTheme = value; OnPropertyChanged(); }
}
bool _darkTheme;
public MainPage()
{
InitializeComponent();
App.settingsTabPage = new SettingsTabPage(this);
在 SettingsTabPage 我有这个:
public partial class SettingsTabPage : ContentPage
{
public TabbedPage mainPage;
public SettingsTabPage(TabbedPage mp)
{
InitializeComponent();
mainPage = mp;
但是当我想像这样对 DarkTheme 进行更改时,它找不到 DarkTheme:
mainPage.DarkTheme << can't find DarkTheme
有人可以就我做错了什么给我一些建议吗?
解决方案
在SettingsTabPage
类内部,您必须强制mainPage
转换为MainPage
类,或者将mainPage
变量类型声明为MainPage
类。
任何一个
(mainPage as MainPage).DarkTheme = ...
或者
public partial class SettingsTabPage : ContentPage
{
public MainPage mainPage;
public SettingsTabPage(MainPage mp)
{
InitializeComponent();
mainPage = mp;
推荐阅读
- python - 使用 BeautifulSoup 和 Python 抓取表格
- python - 有没有办法在不使用 for 循环的情况下使用 Python 中的前几行在列上计算公式?
- c++ - 有没有办法在 C++ 中将方法存储在某种类型的向量中?
- url - 通过 URL 向多个联系人发送 WhatsApp 消息
- stripe-payments - 有没有办法在构建服务器上运行 Stripe CLI?
- arrays - 我可以在同一轴的数组中添加超过 1 个维度吗?
- c - 如果二维数组的大小太大,则会出现分段错误
- amazon-ec2 - 为 Mediawiki 站点设置 AWS Loadbalancer Healthcheck
- python-3.x - 尝试检测时orb检测崩溃
- mysql - 您可以使用“骑士移动”来查询单个数据库并将其连接到自身吗?