We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy. (Last updated on: November 16, 2018).
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

Custom function with SfPopUp how wait ???

Thread ID:

Created:

Updated:

Platform:

Replies:

140768 Nov 6,2018 12:43 PM UTC Nov 12,2018 10:35 AM UTC Xamarin.Forms 6
loading
Tags: SfPopup
Carbonete
Asked On November 6, 2018 12:43 PM UTC

Hi,

I´m create custom function that have screen interaction, to permit user define interaction from cell.

But when made SfPopUp.Show() , this can´t wait SfPopUp end to return and continue program. Custom Function ended before SfPopUp

Thanks in advance for any help.

Custom function Example :

public string InputRB(string args)
        {
            strReturn = String.Empty;
            var splitArgs = args.Split(new char[] { CalcEngine.ParseArgumentSeparator }); 

            DataTemplate templateview = new DataTemplate(() =>
            {
                StackLayout slMain = new StackLayout();
                SfRadioGroup radioGroup = new SfRadioGroup();
                foreach (var item in splitArgs)
                {
                   SfRadioButton rb = new SfRadioButton();
                    rb.Text = item;
                    rb.StateChanged += RadioButton_StateChanged;
                    radioGroup.Children.Add(rb);
                }
                slMain.Children.Add(radioGroup);
                return slMain;
            });


            PopUpInput ppcnt = new PopUpInput();
            SfPopupLayout pplt = ppcnt.Content as SfPopupLayout;
            pplt.PopupView.ContentTemplate = templateview;
            pplt.Show(); /* returning from SFPopUp without wait SFPopUp close. */
            return strReturn;
        }
        private void RadioButton_StateChanged(object sender, StateChangedEventArgs e)
        {
            strReturn = (sender as SfRadioButton).Text;
          
        }

Vigneshkumar Ramasamy [Syncfusion]
Replied On November 8, 2018 12:41 PM UTC

Hi Carbonete,  
  
Thanks for using Syncfusion support.  
                                                                 
We have checked your query. In that, we have loaded the radio button as content in popup, while clicking the radio button the popup does not close. If your try to perform any action while popup in the view, the popup will close, it is the behavior of the popup. We have prepared the sample based on your requirement and attached the same for your reference. You can download the sample from the below link.    
  
 
Please let us know if this helpful.  
 
Regards,  
Vigneshkumar R 


Carbonete
Replied On November 8, 2018 05:08 PM UTC

Hi Carbonete,  
  
Thanks for using Syncfusion support.  
                                                                 
We have checked your query. In that, we have loaded the radio button as content in popup, while clicking the radio button the popup does not close. If your try to perform any action while popup in the view, the popup will close, it is the behavior of the popup. We have prepared the sample based on your requirement and attached the same for your reference. You can download the sample from the below link.    
  
 
Please let us know if this helpful.  
 
Regards,  
Vigneshkumar R 


Hi,

Sorry but this is not the answer . You not put any instruction after   popupLayout.Show();

If you make this , you see instruction execute and popup continue open.

private void ClickToShowPopup_Clicked(object sender, EventArgs e)
        {
            popupLayout.Show();
            string s = " this execute and popup still open";
        }

In my sample.

return strReturn;

  executed and popup not closed.

I  want instruction after Show execute only after  popup  closed.

Remenber that popup is showed inside a Calculate function and if not wait popup close, function ended and return no value.

Thanks for your atention.





FrozDark
Replied On November 8, 2018 07:42 PM UTC

Make you callback async and do this

private async void ClickToShowPopup_Clicked(object sender, EventArgs e)
        {
                popupLayout.IsOpen = true;
                while (popupLayout.IsOpen)
                {
                     await Task.Delay(100);
                }
               string s = " this execute AFTER popup closed";
        }

Vigneshkumar Ramasamy [Syncfusion]
Replied On November 9, 2018 12:27 PM UTC

Hi Carbonete,  
  
We are sorry for the inconvenience caused.  
  
We have checked your query. In that, if you want to perform the action after popup close. You can achieve your requirement by using SfPopupLayout.Closed event. We have prepared the sample base on your requirement and attached for your reference you can download the same from below link.  
  
 
You can perform your actions “string s = " this execute AFTER popup closed";” inside the popup closed event. 
 
Please let us know if this helpful. 
 
Regards,  
Vigneshkumar R 


Carbonete
Replied On November 9, 2018 12:43 PM UTC

Hi Carbonete,  
  
We are sorry for the inconvenience caused.  
  
We have checked your query. In that, if you want to perform the action after popup close. You can achieve your requirement by using SfPopupLayout.Closed event. We have prepared the sample base on your requirement and attached for your reference you can download the same from below link.  
  
 
You can perform your actions “string s = " this execute AFTER popup closed";” inside the popup closed event. 
 
Please let us know if this helpful. 
 
Regards,  
Vigneshkumar R 


Sorry, i think you can't understand or i can´t be clear in my need.  
I need a synchronous PopUp.

I need a behavior like  to win32 Messagebox or Win32 OpenFIledialog .

Next intruction not executed until Dialog closed. 

Examples :

https://docs.microsoft.com/en-us/dotnet/api/microsoft.win32.openfiledialog?view=netframework-4.7.2

https://docs.microsoft.com/en-us/windows/desktop/dlgbox/using-dialog-boxes

Vigneshkumar Ramasamy [Syncfusion]
Replied On November 12, 2018 10:35 AM UTC

 
Hi Carbonete,  
  
Thanks for your update.  
  
We have checked your query. You can achieve your requirement by setting  the IsOpen true and false. In our sample we have show popup in button click and close the popup with delay, after close the popup the DisplayAlert will show . we have attached the sample for your reference. You can download the same from the below link.  
   
 
Please let us know if this helpful. 
 
Regards,  
Vigneshkumar R 


CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Please sign in to access our forum

This page will automatically be redirected to the sign-in page in 10 seconds.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

;