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 控件的情况下 DataGridIList 由 属性返回的 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,则基础列表是实现 DataViewIList) 的 (。 实现 接口的其他类 (这不是完整列表) 包括 ArrayArrayListCollectionBase

如何使用 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));   
}  

适用于

另请参阅