我在我的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彼此通信。而你的網頁也會相應修改。
謝謝傑森這是我正在尋找 –