バージョン

コードでのカルーセル項目の追加

トピックの概要

目的

このトピックでは、コードビハインドを使用して  UltraCarousel 項目を追加する方法を紹介します。

概要

概要

このトピックでは、UltraCarousel コントロールを追加する方法、およびコードでコントロールのプロパティにより構成する方法を学習します。コントロールには、項目に表示する文字列または画像のコレクションのバインドに使用できる DataSource プロパティがあります。

Note
注:

画像が項目内のテキスト用のスペースに収まるじサイズの場合、各項目はテキスト、画像、または両方を表示できます。

Adding Carousel Items in Code 1.png

アプリケーションの要件

  1. Infragistics WinForms 2014 Volume 2 またはそれ以降のバージョンをインストールします。

2.Visual Studio 2010 またはそれ以降のバージョンを使用して、新しい Windows Forms アプリケーションを開始します。

UltraCarousel コントロールの追加

以下のコード例では、UltraCarousel コントロールのインスタンスを作成する方法とそれをフォームに追加する方法を紹介します。コントロールはデフォルトで、項目を追加する前またはデータにバインドする前に、項目パスおよびスクロール ボタンとともに表示されます。

C# の場合:

UltraCarousel carousel1 = new UltraCarousel();
this.Controls.Add(carousel1);

Visual Basic の場合:

Dim carousel1 As New UltraCarousel()
Me.Controls.Add(carousel1)

項目の追加

UltraCarousel コントロールの項目は、データ オブジェクトのビジュアル表現です。項目は、パス上で四角形のタイルとして表示されます。 ItemSlots プロパティは、パス上に表示する項目数を指定します ( Default=5 )。各項目のデフォルト サイズは 64×64 (ピクセル単位) です。

以下のコード例では、カルーセル項目を手動で追加する方法、および画像付き項目の外観を設定する方法を紹介します。

C# の場合:

for (int i = 0; i < 5; i++)
{
    CarouselItem item = new CarouselItem();
    item.Settings.Appearance.Image = GetImage(string.Format("motorcycle{0}.png", i + 1));
    carousel1.Items.Add(item);
}

Visual Basic の場合:

For i As Integer = 0 To 4
      Dim item As New CarouselItem()
      item.Settings.Appearance.Image = GetImage(String.Format("motorcycle{0}.png", i + 1))
      carousel1.Items.Add(item)
Next
Adding Carousel Items in Code 2.png

データのバインド

UltraCarousel コントロールは手動で項目を追加するだけでなく、データのバインドもサポートしています。

Note
注:

カルーセル項目がデータにバインドされている場合、項目の追加や更新はできません。

このコードでは、コントロールの DataSource プロパティを使用してコントロールをデータにバインドする方法を紹介します。

C# の場合:

carousel1.DataSource = new TestData();

Visual Basic の場合:

carousel1.DataSource = New TestData()

サンプル テスト データ

データ バインディングで使用するテスト データです。このテスト データ モデル では、いくつかの画像をプロジェクトに追加し、ビルド アクションEmbedded Resources に設定します。

C# の場合:

public class TestData : List<TestDataItem>
{
    public TestData()
    {
        for (int i = 0; i < 5; i++)
        {
            Add(new TestDataItem { Item = "Item", img = Images.GetImage(string.Format("motorcycle{0}.png", i + 1)) });
        }
    }
}
public class TestDataItem
{
    public string Item { get; set; }
    public Image img { get; set; }
}
public class Images
{
    public static Image GetImage(string imageName)
    {
        var type = typeof(Form1);
        var resName = string.Format("{0}", imageName);
        var stream = type.Module.Assembly.GetManifestResourceStream(type, resName);
        return null == stream ? null : Image.FromStream(stream);
    }
}

Visual Basic の場合:

Public Class TestData
      Inherits List(Of TestDataItem)
      Public Sub New()
            For i As Integer = 0 To 4
                  Add(New TestDataItem() With { _
                        .Item = "Item", _
                        .img = Images.GetImage(String.Format("motorcycle{0}.png", i + 1)) _
                  })
            Next
      End Sub
End Class
Public Class TestDataItem
      Public Property Item() As String
            Get
                  Return m_Item
            End Get
            Set
                  m_Item = Value
            End Set
      End Property
      Private m_Item As String
      Public Property img() As Image
            Get
                  Return m_img
            End Get
            Set
                  m_img = Value
            End Set
      End Property
      Private m_img As Image
End Class
Public Class Images
      Public Shared Function GetImage(imageName As String) As Image
            Dim type = GetType(Form1)
            Dim resName = String.Format("{0}", imageName)
            Dim stream = type.[Module].Assembly.GetManifestResourceStream(type, resName)
            Return If(stream Is Nothing, Nothing, Image.FromStream(stream))
      End Function
End Class

関連コンテンツ

トピック

このトピックの追加情報については、以下のトピックも合わせてご参照ください。

トピック 目的

このトピックでは、コントロールのデザイン時のインターフェイスを使用して UltraCarousel 項目を追加および構成する方法を紹介します。

このトピックでは、コードビハインドでデータを UltraCarousel にバインドする方法を紹介します。

このトピックでは、デザイン時にデータ ソースをセットアップする方法、およびそれを UltraCarousel コントロールにバインドする方法を手順とともに紹介します。

このトピックでは、コントロールがデータにバインドされていない場合に、カルーセル項目を含む UltraCarousel レイアウトを保存する方法と読み込む方法を紹介します。バインドされている場合、保存されたレイアウトを読み込んだ後でコントロールを再度バインドする必要があります。