繁体   English   中英

如何从 BaseViewModel xamarin 调用 xaml.cs 文件中的方法

[英]How to call a method in xaml.cs file from BaseViewModel xamarin

我需要在Baseviewmodel中触发事件时打开alert dialog alert dialog打开逻辑写在xaml.cs文件的button单击处理程序中。

//BaseViewModel event
 void CloseDialog()
 {
    //Call xaml.cs file `OpenDiaglog` event here
 }

这是我需要调用的xaml.cs文件的方法

void OpenDiaglog()
  {
    lblZoomedView.IsVisible = true;
    zoomViewFrame.IsVisible = true;
    innerpersonnelGrid.IsVisible = false;
    btnNextZoomedView.IsVisible = true;
    btnNext.IsVisible = false;
  }

我需要使用MessagingCenterSubscsribers ,我该怎么做?

使用MessegingCenter解决了这个问题。

BaseViewModel

//BaseViewModel event   
void CloseDialog()
 {     
    //Call xaml.cs file `OpenDiaglog` event here
    MessagingCenter.Send(Xamarin.Forms.Application.Current, "Hi");
 }

xaml.cs文件中

protected override void OnAppearing()
 {
    base.OnAppearing();
    MessagingCenter.Subscribe<Xamarin.Forms.Application>(Xamarin.Forms.Application.Current, "Hi", (sender) =>
     {
        OpenDiaglog();
     });
 }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM