我正在使用MAUI编写一个应用程序,其中有一个名为Company
的对象,该对象在MainPage
中初始化
public partial class MainPage : ContentPage
{
Company company { get; set; } = new Company();
我希望该对象在两个页面之间共享,这两个页面通过运行在AppShell
上的选项卡系统相互切换。
应用程序 shell .xaml
<Shell
x:Class="Work_Tasks.AppShell"
xmlns="http://schemas.microsoft.com/dotnet/2021/maui"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:Work_Tasks"
xmlns:views="clr-namespace:Work_Tasks.Pages">
<TabBar>
<ShellContent
ContentTemplate="{DataTemplate local:MainPage}"
Route="MainPage"
Icon="home.png"/>
<ShellContent
ContentTemplate="{DataTemplate views:AddPersonel}"
Route="AddPersonel"
Icon="add_contact.png"/>
</TabBar>
我不想让对象变成static
。有没有办法让对象通过两个或多个页面?我应该怎么做?
1条答案
按热度按时间7eumitmz1#
如果我有这个问题,我可能会选择这样的东西。创建类:
现在在MauiProgramm.cs中将其注册为单例
现在,您可以通过构造函数将此示例注入到页面:
这应该可以解决你的问题。如果你需要的话,你也可以在MainPage中用public getter把它作为一个属性。还有一件事。在c#中,按照惯例,我们通常用大写字母写属性名。