2018年7月2日月曜日

開発環境

Head First C# ―頭とからだで覚えるC#の基本 (Andrew Stellman (著)、Jennifer Greene (著)、佐藤 嘉一 (監修, 監修)、木下 哲也 (翻訳)、オライリージャパン)の4章(型と参照 - 10時です。データがどこにあるかわかりますか?)、エクササイズ(p. 145)を取り組んでみる。

コード

MainPage.xaml

<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             xmlns:local="clr-namespace:App1"
             x:Class="App1.MainPage">

    <StackLayout>
        <!-- Place new controls here -->
        <!--
     <Label Text="Welcome to Xamarin.Forms!" 
           HorizontalOptions="Center"
           VerticalOptions="CenterAndExpand" />
        -->
        <Button x:Name="button1"
                Text="リロイド"
                Clicked="button1_Clicked"/>
        <Button x:Name="button2"
                Text="ルシンダ"
                Clicked="button2_Clicked"/>
        <Button x:Name="button3"
                Text="交換"
                Clicked="button3_Clicked"/>
    </StackLayout>

</ContentPage>

MainPage.xaml.cs

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Xamarin.Forms;

namespace App1
{
 public partial class MainPage : ContentPage
 {
        Elephant lucinda;
        Elephant lloyd;

  public MainPage()
  {
   InitializeComponent();

            lucinda = 
                new Elephant() { name = "ルシンダ", earSize = 85 };
            lloyd = 
                new Elephant() { name = "リロイド", earSize = 100 };
  }

        private void button1_Clicked(object sender, EventArgs e)
        {
            lloyd.WhoAmI();
        }

        private void button2_Clicked(object sender, EventArgs e)
        {
            lucinda.WhoAmI();
        }

        private void button3_Clicked(object sender, EventArgs e)
        {
            Elephant elephant = lucinda;
            lucinda = lloyd;
            lloyd = elephant;
            DisplayAlert("", "オブジェクトを交換しました", "OK");
        }
    }

    public class Elephant:ContentPage
    {
        public string name;
        public int earSize;

        public void WhoAmI()
        {
            DisplayAlert(
                name + "が言った・・・",
                "私の耳の大きさは" + earSize + "cmです。",
                "OK");
        }
    }
}

App.xaml

<?xml version="1.0" encoding="utf-8" ?>
<Application xmlns="http://xamarin.com/schemas/2014/forms"
             xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
             x:Class="App1.App">
    <Application.Resources>
        
    </Application.Resources>
</Application>

App.xaml.cs

using System;
using Xamarin.Forms;
using Xamarin.Forms.Xaml;

[assembly: XamlCompilation (XamlCompilationOptions.Compile)]
namespace App1
{
 public partial class App : Application
 {
  public App ()
  {
   InitializeComponent();

            // MainPage = new MainPage();
            MainPage = new NavigationPage(
                new MainPage() { Title = "交換" });
  }

  protected override void OnStart ()
  {
   // Handle when your app starts
  }

  protected override void OnSleep ()
  {
   // Handle when your app sleeps
  }

  protected override void OnResume ()
  {
   // Handle when your app resumes
  }
 }
}

0 コメント:

コメントを投稿