我在我的MainPage.xaml.cs中有一个函数,当它被调用时,我想更改另一个页面中名为Dashboard.xaml.cs的标签上的文本Xamarin Forms - 在另一个页面访问变量
如何在Xamarin Forms中的文件之间更改变量和调用函数?
我在我的MainPage.xaml.cs中有一个函数,当它被调用时,我想更改另一个页面中名为Dashboard.xaml.cs的标签上的文本Xamarin Forms - 在另一个页面访问变量
如何在Xamarin Forms中的文件之间更改变量和调用函数?
页面只是类,你可以像任何类别之间的沟通:使用公共方法,公共性,公共事件等
但是,使用窗体的内置MessagingCenter可能是最好的方法:
// send a message TO an instance of MyPage
MessagingCenter.Send<MyPage, string> (this, "MessageName", some_string_arg);
// in MyPage, listen for the Message
MessagingCenter.Subscribe<MyPage> (this, "MessageName", (sender, args) => {
// args will contain the value passed in Send
});
Xamarin中的每个视图都是一个类,您可以实例化一个View类型的变量,其中View是您想要访问的页面。例如:
我有一个叫Works的视图。要包含在视图中访问(公共)函数和变量,我写这样的代码:
Works MyTestVariable;
var SomeResult = MyTestVariable.FunctionInWorksClass(aParameter);
中包含的工程视图功能被执行,值返回到调用视图的变种。
你可以发布你的“调用视图”的例子吗? 我想看看你如何处理返回值。 – tmighty
假设您有一个页面实例的引用,您可以调用该实例的方法或设置属性。
在2.3.6中,您甚至可以设置x:FieldModifier
并直接修改字段值。
但是不要这样做。使用Mvvm模式,绑定页面,并让ViewModel彼此通信。而你的网页也会相应修改。
谢谢杰森这是我正在寻找 –