Xamarin.Forms のドキュメント
C# によるコンポーネントの追加
Xamarin.Forms の紹介 > C# によるコンポーネントの追加

このトピックでは、C# を使用してアプリにコントロールを追加する方法について説明します。これには、3 つの手順を実行します。

手順 1:新しいクラスの追加

  1. ソリューションエクスプローラーで、プロジェクト YourAppName(Portable または Shared)を右クリックします。
  2. [追加]→[新しい項目...]を選択します。[新しい項目の追加]ダイアログボックスが表示されます。
  3. インストール済みテンプレートから、[Visual C#]→[クラス]を選択します。
  4. クラスの名前(例:Class1.cs)を入力し、[OK]をクリックします。プロジェクトに新しいクラスが追加されます。

手順 2:コントロールの追加

  1. ソリューションエクスプローラーで、Class1.cs をダブルクリックして開きます。
  2. 必要な名前空間を追加します。たとえば、次のコードには、Gauge の名前空間が追加されています。
    C#
    コードのコピー
    using C1.Xamarin.Forms.Gauge;
    using Xamarin.Forms;
    
  3. 追加したいコントロールを戻り値の型として設定して、新しいメソッド(例:ReturnMyControl())を宣言します。
  4. メソッドの定義で、コントロールのインスタンスを作成し、そのプロパティを設定します。

    次の例は、LinearGauge コントロールのインスタンスを作成し、それを ReturnMyControl() メソッドの定義で初期化する方法を示します。

    C#
    コードのコピー
    public static C1LinearGauge ReturnMyControl()
    {
        // 直線型ゲージのインスタンスを作成し、プロパティを設定します
        C1LinearGauge gauge = new C1LinearGauge();
        gauge.HeightRequest = 50;
        gauge.WidthRequest = 50;
        gauge.Value = 35;
        gauge.Thickness = 0.1;
        gauge.Min = 0;
        gauge.Max = 100;
        gauge.Direction = LinearGaugeDirection.Right;
    
        // 範囲を作成します
        GaugeRange low = new GaugeRange();
        GaugeRange med = new GaugeRange();
        GaugeRange high = new GaugeRange();
    
        // 範囲をカスタマイズします
        low.Color = Color.Red;
        low.Min = 0;
        low.Max = 40;
        med.Color = Color.Yellow;
        med.Min = 40;
        med.Max = 80;
        high.Color = Color.Green;
        high.Min = 80;
        high.Max = 100;
    
        // 範囲をゲージに追加します
        gauge.Ranges.Add(low);
        gauge.Ranges.Add(med);
        gauge.Ranges.Add(high);
    
        return gauge;
    }
    
先頭に戻る

手順 3:プログラムの実行

  1. ソリューションエクスプローラーで、App.xaml.cs をダブルクリックして開きます。
  2. クラスコンストラクタ App() で、新しい ContentPage を MainPage として設定し、コントロールを ContentPage の Content に割り当てます。それには、メソッド ReturnMyControl() (前の手順「手順 2:コントロールの追加」で定義済み)を呼び出します。

    次のコードは、上記の手順を実行した後のクラスコンストラクタ App() を示します。

    C#
    コードのコピー
    public App()
    {
        // アプリケーションのルートページ
        MainPage = new ContentPage
        {
            Content = Class1.ReturnMyControl()
        };
    }
    
  3. iOS および UWP プロジェクトを実行するには、多少の追加手順が必要です。たとえば、Gauges の場合、次の手順を実行する必要があります。
    • iOS プロジェクト:
      1. ソリューションエクスプローラーで、YourAppName.iOS プロジェクト内の AppDelegate.cs をダブルクリックして開きます。
      2. 次のコードを FinishedLaunching() メソッドに追加します。
        C#
        コードのコピー
        C1.Xamarin.Forms.Gauge.Platform.iOS.C1GaugeRenderer.Init();
        
    • UWP プロジェクト:
      1. ソリューションエクスプローラーで、MainPage.xaml を展開します。
      2. MainPage.xaml.cs をダブルクリックして開きます。
      3. 次のコードをクラスコンストラクタに追加します。
        C#
        コードのコピー
        C1.Xamarin.Forms.Gauge.Platform.UWP.C1GaugeRenderer.Init();
        
  4. [F5]キーを押してプロジェクトを実行します。
先頭に戻る
関連トピック