4 人のうち 0 人が役に立つと評価しました    - このトピックを評価する

BindingNavigator クラス

メモ : このクラスは、.NET Framework version 2.0 で新しく追加されたものです。

フォーム上にあるデータにバインドされたコントロールの移動および操作用ユーザー インターフェイス (UI) を表します。

名前空間: System.Windows.Forms
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

[ComVisibleAttribute(true)] 
[ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)] 
public class BindingNavigator : ToolStrip, ISupportInitialize
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) */ 
public class BindingNavigator extends ToolStrip implements ISupportInitialize
ComVisibleAttribute(true) 
ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch) 
public class BindingNavigator extends ToolStrip implements ISupportInitialize

BindingNavigator コントロールは、フォーム上のデータ間を移動したり、データを操作したりするための標準的な方法を表します。多くの場合、BindingNavigator は、BindingSource コントロールと組み合わせて、フォーム上のデータ レコード間を移動したり、レコードを操作したりするために使用します。この場合、BindingSource プロパティが、データ ソースとして機能する関連の System.Windows.Forms.BindingSource コンポーネントに設定されます。

既定では、BindingNavigator コントロールのユーザー インターフェイス (UI) は、一連の ToolStrip ボタン、テキスト ボックス、および最もよく使用されるデータ関連操作 (データの追加、データの削除、データ間の移動など) を表す静的テキスト要素で構成されます。これらの各コントロールは、BindingNavigator コントロールの関連するメンバを通じて取得または設定できます。また、これらのメンバは、プログラム上で同じ機能を果たす BindingSource クラスのメンバと一対一で対応しています。次の表に、その対応を示します。

UI コントロール

BindingNavigator のメンバ

BindingSource のメンバ

最初に移動

MoveFirstItem

MoveFirst

前に戻る

MovePreviousItem

MovePrevious

現在の場所

PositionItem

Current

Count

CountItem

Count

次に移動

MoveNextItem

MoveNext

最後に移動

MoveLastItem

MoveLast

新規追加

AddNewItem

AddNew

Delete

DeleteItem

RemoveCurrent

BindingNavigator コントロールをフォームに追加して、BindingSource などのデータ ソースにバインドすると、このテーブルの関係が自動的に確立されます。

BindingNavigator のすべてのコンストラクタは、AddStandardItems メソッドを呼び出して、UI コントロールの標準的なセットを移動ツール バーに関連付けます。このツール バーをカスタマイズするには、次の方法のうちいずれかを使用します。

  • ブール値の addStandardItems パラメータを取る BindingNavigator(Boolean) コンストラクタを使用し、このパラメータを false に設定して、BindingNavigator を作成します。次に、目的の ToolStripItem オブジェクトを Items コレクションに追加します。

  • 大幅なカスタマイズを行う場合、またはカスタム デザインを再利用する場合は、BindingNavigator からクラスを派生させ、AddStandardItems メソッドをオーバーライドして、標準項目を追加するか、代わりの標準項目を定義します。

次のコード例は、BindingNavigator コントロールを使用して、データベース クエリの結果間を移動する方法を示しています。結果セットは DataSet に格納されており、このデータ セットは TextBox コントロールおよび BindingSource コンポーネントにバインドされています。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Data.SqlClient;
using System.Windows.Forms;

// This form demonstrates using a BindingNavigator to display 
// rows from a database query sequentially.
public class Form1 : Form
{
    // This is the BindingNavigator that allows the user
    // to navigate through the rows in a DataSet.
    BindingNavigator customersBindingNavigator = new BindingNavigator();

    // This is the BindingSource that provides data for
    // the Textbox control.
    BindingSource customersBindingSource = new BindingSource();

    // This is the TextBox control that displays the CompanyName
    // field from the the DataSet.
    TextBox companyNameTextBox = new TextBox();

    public Form1()
    {
        // Set up the BindingSource component.
        this.customersBindingNavigator.BindingSource = this.customersBindingSource;
        this.customersBindingNavigator.Dock = DockStyle.Top;
        this.Controls.Add(this.customersBindingNavigator);

        // Set up the TextBox control for displaying company names.
        this.companyNameTextBox.Dock = DockStyle.Bottom;
        this.Controls.Add(this.companyNameTextBox);

        // Set up the form.
        this.Size = new Size(800, 200);
        this.Load += new EventHandler(Form1_Load);
    }

    void Form1_Load(object sender, EventArgs e)
    {   
        // Open a connection to the database.
        // Replace the value of connectString with a valid 
        // connection string to a Northwind database accessible 
        // to your system.
        string connectString = 
            "Integrated Security=SSPI;Persist Security Info=False;" +
            "Initial Catalog=Northwind;Data Source=localhost";
        SqlConnection connection = new SqlConnection();
        connection.ConnectionString = connectString;
        connection.Open();

        // Execute the query.
        SqlCommand command = new SqlCommand(
            "Select * From Customers", connection);
        SqlDataReader reader = command.ExecuteReader(
            CommandBehavior.CloseConnection);

        // Load the Customers result set into the DataSet.
        DataSet ds = new DataSet("Northwind Customers");
        ds.Load(
            reader, 
            LoadOption.OverwriteChanges, 
            new string[] { "Customers" });

        // Assign the DataSet as the DataSource for the BindingSource.
        this.customersBindingSource.DataSource = ds;

        // Bind the CompanyName field to the TextBox control.
        this.companyNameTextBox.DataBindings.Add(
            new Binding("Text", 
            this.customersBindingSource, 
            "CompanyName", 
            true));
    }
}

System.Object
   System.MarshalByRefObject
     System.ComponentModel.Component
       System.Windows.Forms.Control
         System.Windows.Forms.ScrollableControl
           System.Windows.Forms.ToolStrip
            System.Windows.Forms.BindingNavigator
この型の public static (Visual Basic では Shared) メンバはすべて、スレッド セーフです。インスタンス メンバの場合は、スレッド セーフであるとは限りません。

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。

.NET Framework

サポート対象 : 2.0
この情報は役に立ちましたか。
(残り 1500 文字)
コミュニティ コンテンツ 追加
注釈 FAQ