方法: ページ関数から戻る
この例では、ページ関数から結果を返す方法を示します。
例
ページ関数から戻るには、OnReturn を呼び出して、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
関連項目
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET Desktop feedback