次の方法で共有


CurrencyManager.List プロパティ

この CurrencyManager のリストを取得します。

Public ReadOnly Property List As IList
[C#]
public IList List {get;}
[C++]
public: __property IList* get_List();
[JScript]
public function get List() : IList;

プロパティ値

リストを格納する IList オブジェクト。

解説

List プロパティによって返されたオブジェクトは、 IList インターフェイスを実装する任意の型にキャストできます。この操作は、通常、基になるリストの型が既知である場合に使用します。たとえば、 DataSet にデータ連結されている場合、基になるリストは IList を実装する DataView です。このインターフェイス (これは完全なリストではありません) を実装するその他のクラスには、 ArrayArrayList 、および CollectionBase があります。

List プロパティの使用方法は、 IList インターフェイスを実装するクラスによって異なります。たとえば、 List プロパティを使用して、リストの名前を確認できます。データ ソースが ITypedList インターフェイスを実装する場合は、 GetListName メソッドを使用すると、現在のテーブルの名前を返すことができます。上記の例を次の C# コードに示します。

private void PrintCurrentListName(DataGrid myDataGrid){ 
   CurrencyManager myCM = (CurrencyManager) 
   BindingContext[myDataGrid.DataSource, myDataGrid.DataMember]; 
   IList myList = myCM.List; 
   ITypedList thisList = (ITypedList) myList; 
   Console.WriteLine(thisList.GetListName(null)); 
}

使用例

[Visual Basic, C#, C++] レコードのセットの編集を許可し、新しいレコードの追加は許可しない例を次に示します。 DataGrid コントロールの Navigate イベントで、 List プロパティによって返された IListDataView 変数にキャストされます。 DataView オブジェクトの AllowNew は、 false に設定されています。

 
Private Sub Grid_Navigate(sender As Object, e As NavigateEventArgs)
   If e.Forward Then
      Dim ds As DataSet = CType(grid.DataSource, DataSet)
      Dim cm As CurrencyManager = _
      CType(BindingContext(ds,"Customers.CustOrders"), CurrencyManager)
      ' Cast the IList to a DataView to set the AllowNew property.
      Dim dv As DataView = CType(cm.List, DataView)
      dv.AllowNew = false
   End If
End Sub

[C#] 
private void Grid_Navigate(object sender, NavigateEventArgs e){
   if (e.Forward ){
      DataSet ds = (DataSet) grid.DataSource;
      CurrencyManager cm  = 
      (CurrencyManager)BindingContext[ds,"Customers.CustOrders"];
      // Cast the IList to a DataView to set the AllowNew property.
      DataView dv  = (DataView) cm.List;
      dv.AllowNew = false;
   }
}

[C++] 
private:
    void Grid_Navigate(Object* /*sender*/, NavigateEventArgs* e) {
        if (e->Forward) {
            DataSet* ds = dynamic_cast<DataSet*> (grid->DataSource);
            CurrencyManager* cm  =
                dynamic_cast<CurrencyManager*>(
                    BindingContext->get_Item(ds, S"Customers::CustOrders"));
            // Cast the IList* to a DataView to set the AllowNew property.
            DataView* dv  = dynamic_cast<DataView*>(cm->List);
            dv->AllowNew = false;
        }
    }

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

参照

CurrencyManager クラス | CurrencyManager メンバ | System.Windows.Forms 名前空間