[Windows Phone] 陳述式 Lambda(statement Lambda)

陳述式 Lambda(statement Lambda)是運算子後面可以用大括號括起來多行陳述式,且可含任何數目的陳述式。

前言

陳述式 Lambda(statement Lambda)是運算子後面可以用大括號括起來多行陳述式,且可含任何數目的陳述式。

 

示範

Step1、建立一個新專案。

01

 

Step2、畫面設計。

在 Grid 內佈置下面畫面,其控制項配置如下:

  • Button 按鈕,Name 屬性:btn1,Content 屬性:確定

02

 

產生的 XAML 程式碼如下:


<Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0">
            <Button x:Name="btn1" Content="確 定" HorizontalAlignment="Left" Margin="112,84,0,0" VerticalAlignment="Top" Height="126" Width="224" FontSize="36"/>
</Grid>

 

Step3、在 MainPage.cs 程式碼中撰寫事件處理函式:

 


using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Navigation;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
using PhoneApp1.Resources;

namespace PhoneApp1
{
    public partial class MainPage : PhoneApplicationPage
    {
        // 建構函式
        public MainPage()
        {
            InitializeComponent();

            btn1.Click += btn1_Click; //產生btn1的Click事件
            
        }

        delegate void methAddr(string s);
        void btn1_Click(object sender, RoutedEventArgs e)
        {
            methAddr outStr = st1 =>
                {
                    string res = st1 + "Hello!";
                    MessageBox.Show(res);
                };
            outStr("Mr.張:");
        }        
    }
}

 

結果

按一下"確定"鈕,將會跳出 MessageBox。

03

 

跳出 MessageBox 後,顯示 Mr.張:Hello!

04

 

相關參考與引用

Lambda 運算式 (C# 程式設計手冊)