DesignerDataSourceView Classe
Definição
Serve como a classe base para classes de exibição de fonte de dados de tempo de design.Serves as the base class for design-time data source view classes.
public ref class DesignerDataSourceView abstract
public abstract class DesignerDataSourceView
type DesignerDataSourceView = class
Public MustInherit Class DesignerDataSourceView
- Herança
-
DesignerDataSourceView
- Derivado
Exemplos
O exemplo de código a seguir mostra como criar um DesignerDataSourceView objeto personalizado junto com uma IDataSourceViewSchema classe personalizada e duas IDataSourceFieldSchema classes personalizadas.The following code example shows how to create a custom DesignerDataSourceView object along with a custom IDataSourceViewSchema class and two custom IDataSourceFieldSchema classes.
Este exemplo faz parte de um exemplo maior para a DataSourceDesigner classe.This example is part of a larger sample for the DataSourceDesigner class.
// A design-time data source view
public class CustomDesignDataSourceView : DesignerDataSourceView
{
private ArrayList _data = null;
public CustomDesignDataSourceView(
CustomDataSourceDesigner owner, string viewName)
: base(owner, viewName)
{}
// Get data for design-time display
public override IEnumerable GetDesignTimeData(
int minimumRows, out bool isSampleData)
{
if (_data == null)
{
// Create a set of design-time fake data
_data = new ArrayList();
for (int i = 1; i <= minimumRows; i++)
{
_data.Add(new BookItem("ID_" + i.ToString(),
"Design-Time Title 0" + i.ToString()));
}
}
isSampleData = true;
return _data as IEnumerable;
}
public override IDataSourceViewSchema Schema
{
get { return new BookListViewSchema(); }
}
// Allow getting the record count
public override bool CanRetrieveTotalRowCount
{
get { return true; }
}
// Do not allow deletions
public override bool CanDelete
{
get { return false; }
}
// Do not allow insertions
public override bool CanInsert
{
get { return false; }
}
// Do not allow updates
public override bool CanUpdate
{
get { return false; }
}
// Do not allow paging
public override bool CanPage
{
get { return false; }
}
// Do not allow sorting
public override bool CanSort
{
get { return false; }
}
}
' A design-time data source view
Public Class CustomDesignDataSourceView
Inherits DesignerDataSourceView
Private _data As ArrayList = Nothing
Public Sub New(ByVal owner As CustomDataSourceDesigner, ByVal viewName As String)
MyBase.New(owner, viewName)
End Sub
' Get data for design-time display
Public Overrides Function GetDesignTimeData( _
ByVal minimumRows As Integer, _
ByRef isSampleData As Boolean) As IEnumerable
If IsNothing(_data) Then
' Create a set of design-time fake data
_data = New ArrayList()
Dim i As Integer
For i = 1 To minimumRows
_data.Add(New BookItem("ID_" & i.ToString(), _
"Design-Time Title 0" & i.ToString()))
Next
End If
isSampleData = True
Return CType(_data, IEnumerable)
End Function
Public Overrides ReadOnly Property Schema() As IDataSourceViewSchema
Get
Return New BookListViewSchema()
End Get
End Property
' Allow getting the record count
Public Overrides ReadOnly Property CanRetrieveTotalRowCount() As Boolean
Get
Return True
End Get
End Property
' Do not allow deletions
Public Overrides ReadOnly Property CanDelete() As Boolean
Get
Return False
End Get
End Property
' Do not allow insertions
Public Overrides ReadOnly Property CanInsert() As Boolean
Get
Return False
End Get
End Property
' Do not allow updates
Public Overrides ReadOnly Property CanUpdate() As Boolean
Get
Return False
End Get
End Property
' Do not allow paging
Public Overrides ReadOnly Property CanPage() As Boolean
Get
Return False
End Get
End Property
' Do not allow sorting
Public Overrides ReadOnly Property CanSort() As Boolean
Get
Return False
End Get
End Property
End Class
// A custom View Schema class
public class BookListViewSchema : IDataSourceViewSchema
{
public BookListViewSchema()
{ }
// The name of this View Schema
public string Name
{
get { return "BookList"; }
}
// Build a Field Schema array
public IDataSourceFieldSchema[] GetFields()
{
IDataSourceFieldSchema[] fields = new IDataSourceFieldSchema[2];
fields[0] = new CustomIDFieldSchema();
fields[1] = new CustomTitleFieldSchema();
return fields;
}
// There are no child views, so return null
public IDataSourceViewSchema[] GetChildren()
{
return null;
}
}
// A custom Field Schema class for ID
public class CustomIDFieldSchema : IDataSourceFieldSchema
{
public CustomIDFieldSchema()
{ }
// Name is ID
public string Name
{
get { return "ID"; }
}
// Data type is string
public Type DataType
{
get { return typeof(string); }
}
// This is not an Identity field
public bool Identity
{
get { return false; }
}
// This field is read only
public bool IsReadOnly
{
get { return true; }
}
// This field is unique
public bool IsUnique
{
get { return true; }
}
// This field can't be longer than 20
public int Length
{
get { return 20; }
}
// This field can't be null
public bool Nullable
{
get { return false; }
}
// This is a Primary Key
public bool PrimaryKey
{
get { return true; }
}
// These properties do not apply
public int Precision
{
get { return -1; }
}
public int Scale
{
get { return -1; }
}
}
// A custom Field Schema class for Title
public class CustomTitleFieldSchema : IDataSourceFieldSchema
{
public CustomTitleFieldSchema()
{ }
// Name is Title
public string Name
{
get { return "Title"; }
}
// Type is string
public Type DataType
{
get { return typeof(string); }
}
// This is not an Identity field
public bool Identity
{
get { return false; }
}
// This field is not read only
public bool IsReadOnly
{
get { return false; }
}
// This field is not unique
public bool IsUnique
{
get { return false; }
}
// This field can't be longer than 100
public int Length
{
get { return 100; }
}
// This field can't be null
public bool Nullable
{
get { return false; }
}
// This is not the Primary Key
public bool PrimaryKey
{
get { return false; }
}
// These properties do not apply
public int Precision
{
get { return -1; }
}
public int Scale
{
get { return -1; }
}
}
' A custom View Schema class
Public Class BookListViewSchema
Implements IDataSourceViewSchema
Public Sub New()
End Sub
' The name of this View Schema
Public ReadOnly Property Name() As String Implements IDataSourceViewSchema.Name
Get
Return "BookList"
End Get
End Property
' Build a Field Schema array
Public Function GetFields() As IDataSourceFieldSchema() Implements IDataSourceViewSchema.GetFields
Dim fields(1) As IDataSourceFieldSchema
fields(0) = New CustomIDFieldSchema()
fields(1) = New CustomTitleFieldSchema()
Return fields
End Function
' There are no child views, so return Nothing
Public Function GetChildren() As IDataSourceViewSchema() Implements IDataSourceViewSchema.GetChildren
Return Nothing
End Function
End Class
' A custom Field Schema class for ID
Public Class CustomIDFieldSchema
Implements IDataSourceFieldSchema
Public Sub New()
End Sub
' Name is ID
Public ReadOnly Property Name() As String Implements IDataSourceFieldSchema.Name
Get
Return "ID"
End Get
End Property
' Data type is string
Public ReadOnly Property DataType() As Type Implements IDataSourceFieldSchema.DataType
Get
Return GetType(String)
End Get
End Property
' This is not an Identity field
Public ReadOnly Property Identity() As Boolean Implements IDataSourceFieldSchema.Identity
Get
Return False
End Get
End Property
' This field is read only
Public ReadOnly Property IsReadOnly() As Boolean Implements IDataSourceFieldSchema.IsReadOnly
Get
Return True
End Get
End Property
' This field is unique
Public ReadOnly Property IsUnique() As Boolean Implements IDataSourceFieldSchema.IsUnique
Get
Return True
End Get
End Property
' This field can't be longer than 20
Public ReadOnly Property Length() As Integer Implements IDataSourceFieldSchema.Length
Get
Return 20
End Get
End Property
' This field can't be null
Public ReadOnly Property Nullable() As Boolean Implements IDataSourceFieldSchema.Nullable
Get
Return False
End Get
End Property
' This is a Primary Key
Public ReadOnly Property PrimaryKey() As Boolean Implements IDataSourceFieldSchema.PrimaryKey
Get
Return True
End Get
End Property
' These properties do not apply
Public ReadOnly Property Precision() As Integer Implements IDataSourceFieldSchema.Precision
Get
Return -1
End Get
End Property
Public ReadOnly Property Scale() As Integer Implements IDataSourceFieldSchema.Scale
Get
Return -1
End Get
End Property
End Class
' A custom Field Schema class for Title
Public Class CustomTitleFieldSchema
Implements IDataSourceFieldSchema
Public Sub New()
End Sub
' Name is Title
Public ReadOnly Property Name() As String Implements IDataSourceFieldSchema.Name
Get
Return "Title"
End Get
End Property
' Type is string
Public ReadOnly Property DataType() As Type Implements IDataSourceFieldSchema.DataType
Get
Return GetType(String)
End Get
End Property
' This is not an Identity field
Public ReadOnly Property Identity() As Boolean Implements IDataSourceFieldSchema.Identity
Get
Return False
End Get
End Property
' This field is not read only
Public ReadOnly Property IsReadOnly() As Boolean Implements IDataSourceFieldSchema.IsReadOnly
Get
Return False
End Get
End Property
' This field is not unique
Public ReadOnly Property IsUnique() As Boolean Implements IDataSourceFieldSchema.IsUnique
Get
Return False
End Get
End Property
' This field can't be longer than 100
Public ReadOnly Property Length() As Integer Implements IDataSourceFieldSchema.Length
Get
Return 100
End Get
End Property
' This field can't be null
Public ReadOnly Property Nullable() As Boolean Implements IDataSourceFieldSchema.Nullable
Get
Return False
End Get
End Property
' This is not the Primary Key
Public ReadOnly Property PrimaryKey() As Boolean Implements IDataSourceFieldSchema.PrimaryKey
Get
Return False
End Get
End Property
' These properties do not apply
Public ReadOnly Property Precision() As Integer Implements IDataSourceFieldSchema.Precision
Get
Return -1
End Get
End Property
Public ReadOnly Property Scale() As Integer Implements IDataSourceFieldSchema.Scale
Get
Return -1
End Get
End Property
End Class
Notas aos Implementadores
Ao herdar da DesignerDataSourceView classe, você deve substituir o GetDesignTimeData(Int32, Boolean) método para criar dados de exemplo que estejam de acordo com a Schema propriedade ou para retornar dados reais da fonte de dados.When you inherit from the DesignerDataSourceView class, you must override the GetDesignTimeData(Int32, Boolean) method either to create sample data that conforms to the Schema property, or to return real data from the data source.
Construtores
| DesignerDataSourceView(IDataSourceDesigner, String) |
Inicializa uma nova instância da classe DesignerDataSourceView usando o nome de exibição e o designer de fonte de dados especificados.Initializes a new instance of the DesignerDataSourceView class using the specified data source designer and view name. |
Propriedades
| CanDelete |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte ao método ExecuteDelete(IDictionary, IDictionary).Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports the ExecuteDelete(IDictionary, IDictionary) method. |
| CanInsert |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte ao método ExecuteInsert(IDictionary).Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports the ExecuteInsert(IDictionary) method. |
| CanPage |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte à paginação por meio dos dados que são recuperados pelo método ExecuteSelect(DataSourceSelectArguments).Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports paging through the data that is retrieved by the ExecuteSelect(DataSourceSelectArguments) method. |
| CanRetrieveTotalRowCount |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte à recuperação do número total de linhas de dados em vez dos dados propriamente ditos.Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports retrieving the total number of data rows instead of the data itself. |
| CanSort |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte a uma exibição classificada na fonte de dados subjacente.Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports a sorted view on the underlying data source. |
| CanUpdate |
Obtém um valor que indica se o objeto DataSourceView associado ao objeto DataSourceControl atual dá suporte ao método ExecuteUpdate(IDictionary, IDictionary, IDictionary).Gets a value indicating whether the DataSourceView object that is associated with the current DataSourceControl object supports the ExecuteUpdate(IDictionary, IDictionary, IDictionary) method. |
| DataSourceDesigner |
Obtém uma referência para o designer que criou esse controle DesignerDataSourceView.Gets a reference to the designer that created this DesignerDataSourceView control. |
| Name |
Obtém o nome da exibição conforme fornecido quando esta instância da classe DesignerDataSourceView foi criada.Gets the name of the view as provided when this instance of the DesignerDataSourceView class was created. |
| Schema |
Obtém um esquema que descreve a exibição da fonte de dados que é representada por esse objeto de exibição.Gets a schema that describes the data source view that is represented by this view object. |
Métodos
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual.Determines whether the specified object is equal to the current object. (Herdado de Object) |
| GetDesignTimeData(Int32, Boolean) |
Gera dados de tempo de design que correspondem ao esquema do controle de fonte de dados associado usando o número de linhas especificado, que indica se ele está retornando dados de exemplo ou dados reais.Generates design-time data that matches the schema of the associated data source control using the specified number of rows, indicating whether it is returning sample data or real data. |
| GetHashCode() |
Serve como a função de hash padrão.Serves as the default hash function. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual.Gets the Type of the current instance. (Herdado de Object) |
| MemberwiseClone() |
Cria uma cópia superficial do Object atual.Creates a shallow copy of the current Object. (Herdado de Object) |
| ToString() |
Retorna uma cadeia de caracteres que representa o objeto atual.Returns a string that represents the current object. (Herdado de Object) |