CurrencyManager.List Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene la ruta de acceso para 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
Valor de propiedad
IList que contiene la lista.
Ejemplos
El ejemplo de código siguiente permite a los usuarios editar un conjunto de registros, pero no agregar otros nuevos. En el Navigate caso de un DataGrid control, el IList devuelto por la List propiedad se convierte en una DataView variable. La propiedad AllowNew de DataView está establecida en 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
Comentarios
El objeto devuelto por la List propiedad se puede convertir a cualquier tipo que implemente la IList interfaz . Esto se usará normalmente cuando conozca el tipo de la lista subyacente. Por ejemplo, si está enlazado a datos a , DataSetla lista subyacente es una DataView (que implementa IList). Otras clases que implementan la interfaz (no es una lista completa) incluyen Array, ArrayListy CollectionBase.
La forma en que se usa la List propiedad depende de la clase que implementa la IList interfaz . Por ejemplo, puede usar la List propiedad para determinar el nombre de la lista. Si el origen de datos implementa la ITypedList interfaz , puede usar el GetListName método para devolver el nombre de la tabla actual. Esto se muestra en el código de C# siguiente:
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));
}