次の方法で共有


CurrencyManager.List プロパティ

定義

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

public:
 property System::Collections::IList ^ List { System::Collections::IList ^ get(); };
public System.Collections.IList List { get; }
member this.List : System.Collections.IList
Public ReadOnly Property List As IList

プロパティ値

リストを格納している IList

次のコード例では、ユーザーはレコードのセットを編集できますが、新しいレコードは追加できません。 コントロールが Navigate 発生した DataGrid 場合、 IList プロパティによって返される は List 変数に DataView キャストされます。 DataViewAllowNew プロパティは false に設定されます。

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

注釈

プロパティによって List 返される オブジェクトは、 インターフェイスを実装する任意の型に IList キャストできます。 これは、基になるリストの型がわかっている場合に一般的に使用されます。 たとえば、 に DataSetデータバインドされている場合、基になるリストは DataView ( を実装 IListする) です。 インターフェイスを実装するその他のクラス (完全なリストではありません) には、、ArrayListCollectionBaseが含まれますArray

プロパティの使用方法は、 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));   
}  

適用対象

こちらもご覧ください