Compartir a través de


Cómo regresar de una función de una página

En este ejemplo se muestra cómo devolver un resultado de una función de página.

Ejemplo

Para salir de una función de página, debe llamar a OnReturn y pasar una instancia de ReturnEventArgs<T>.

<PageFunction
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:sys="clr-namespace:System;assembly=mscorlib" 
    x:Class="UsingPageFunctionsSample.GetStringPageFunction"
    x:TypeArguments="sys:String"
    Title="GetStringPageFunction">
</PageFunction>
public partial class GetStringPageFunction : PageFunction<String>
{
    public GetStringPageFunction()
    {
        InitializeComponent();
    }

    public GetStringPageFunction(string initialValue) : this()
    {
        this.stringTextBox.Text = initialValue;
    }

    void okButton_Click(object sender, RoutedEventArgs e)
    {
        // Page function is accepted, so return a result
        OnReturn(new ReturnEventArgs<string>(this.stringTextBox.Text));
    }

    void cancelButton_Click(object sender, RoutedEventArgs e)
    {
        // Page function is cancelled, so don't return a result
        OnReturn(new ReturnEventArgs<string>(null));
    }
}
Partial Public Class GetStringPageFunction
    Inherits PageFunction(Of String)
    Public Sub New()
        InitializeComponent()
    End Sub

    Public Sub New(ByVal initialValue As String)
        Me.New()
        Me.stringTextBox.Text = initialValue
    End Sub

    Private Sub okButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Page function is accepted, so return a result
        OnReturn(New ReturnEventArgs(Of String)(Me.stringTextBox.Text))
    End Sub

    Private Sub cancelButton_Click(ByVal sender As Object, ByVal e As RoutedEventArgs)
        ' Page function is cancelled, so don't return a result
        OnReturn(New ReturnEventArgs(Of String)(Nothing))
    End Sub
End Class

Consulte también