24章:10 行でズバリ!! [C#] Silverlight アプリケーションの開発

    作成2013.04.18

     Silverlight アプリケーションとWPFアプリケーションのコードは完全互換ではなさそうですが、わずかな修正でSilverlight アプリケーション用サンプルコードをWPFアプリケーション用コードに変換できます。
     ここでは、Silverlight アプリケーション用サンプルコードをWPFアプリケーション用コードに変換します。
     10 行でズバリ!! [C#] Silverlight アプリケーションの開発は下記の参照元情報から作成方法の説明と解説を参照できます。

  1. 参照元情報
     10 行でズバリ!! [C#] Silverlight アプリケーションの開発
    「10 行でズバリ!! [C#] Silverlight アプリケーションの開発」にジャンプする
     作成方法の詳細は上記を参照願います。


  2. 10 行でズバリ!! [C#] Silverlight アプリケーションの開発の完成ファイル
     10 行でズバリ!! [C#] Silverlight アプリケーションの開発の作成の解説とおりに作業を実施すると、C#プロジェクトファイル群が完成しますが、 ここでは、VBで作成したプログラムをC#言語に変換を基本とします。
     完成ファイルは以下からダウンロードできます。
     ダウンロード後は解凍してから使用してください。
      [10 行でズバリ!! [C#] Silverlight アプリケーションの開発]をダウンロードする。
     解凍すると「24MySilverlight」フォルダーがあります。
    注(1)「24MySilverlight」フォルダーの「MySilverlight.sln」ファイルをダブルクリックすると「Express 2012 for Windows Desktop」が起動します。
    注(2)メニューの「ウインド」_「ウインドレイアウトのリセット」で標準に戻ります。
    注(3)「ソリューションエクスプローラ」ウインドウ内の「MainWindow.xaml」をダブルクリックすると「デザイン」が表示されます。
    注(4)メニューの「表示」_「コード」を選択するとコードが表示されます。
    注(5)「MySilverlight.sln」の動作確認は「デバッグ」_「デバッグ開始」で実行します。デバッグ機能を用いて動作確認を行います。


  3. MySilverlight.slnの実行
    (1)「Express 2012 for Windows Desktop」のデバッグ機能を使用します。
    (2)「デバッグ」_「デバッグ開始」を選択します。
    (3)操作画面が表示されます。
    (4)ボタンを押すと日時が表示されます。
    (5)スライダーを動かすと影が変化します。
    (6)クローズボックスで終了します。


  4. 新規プロジェクトの作成
    (1)MainWindow.xamlのデザイン設定
     新規プロジェクトを作成すると「デザイナー」にはMainWindow.xamlが自動生成されます。MainWindow.xamlのデザイン設定はVBのMainWindow.xamlのコピー&ペーストで完成します。

    (2) MainWindow.xaml.csコード
     基本コードが自動生成されます。


  5. MainWindow.xamlの全コード
    <Window x:Class="MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
        <Grid x:Name="LayoutRoot">
            <Grid Margin="20,20,20,0" Height="120" VerticalAlignment="Top" 
                  Background="AliceBlue">
                <TextBox x:Name="textbox1" Margin="20,20,20,0" VerticalAlignment="Top" />
                <Button x:Name="button1" Margin="20,60,20,20" Width="100" 
                        HorizontalAlignment="Right" Content="Click!" 
                        Click="button1_Click"/>
            </Grid>
            <Slider x:Name="slider1" Margin="10,0,10,10" VerticalAlignment="Bottom" 
                    ValueChanged="slider1_ValueChanged" Value="5"/>
        </Grid>
    </Window>
    


  6. MainWindow.xamlコードの解説
    (1)VB とC#は同一となります。


  7. MainWindow.xaml.csの全コード
    using System;
    using System.Windows;
    using System.Windows.Media.Effects;
    
    namespace MySilverlight
    {
        public partial class MainWindow : Window
        {
            public MainWindow()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, RoutedEventArgs e)
            {
                textbox1.Text = DateTime.Now.ToString();
            }
    
            private void slider1_ValueChanged(object sender, RoutedPropertyChangedEventArgs e)
            {
                var shadow = new DropShadowEffect();
                shadow.ShadowDepth = slider1.Value;
                textbox1.Effect = shadow;
            }
        }
    }
    


  8. MainWindow.xaml.csコードの解説
    (1)textbox1.Text = DateTime.Now.ToString();でtextbox1に日時を書き込みます。
    (2)var shadow = new DropShadowEffect();は変数shadowにDropShadowEffectを設定します。
    (3)shadow.ShadowDepth = slider1.Value;はShadowDepthにスライダーの値を設定します。
    (4)textbox1.Effect = shadow;はtextbox1にシャドウを設定します。



    感想:
    (1)VBからC#への変換は、簡単でした。







25章:10 行でズバリ!! [C#] Silverlight におけるレイアウトの基本に行く。

トップページに戻る。