Metodo ListObject.SetDataBinding (Object, String, array<String[])
Associa un controllo ListObject a un membro dati specificato di un'origine dati e visualizza solo le colonne specificate di tale membro.
Spazio dei nomi: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)
Sintassi
'Dichiarazione
Sub SetDataBinding ( _
dataSource As Object, _
dataMember As String, _
ParamArray mappedColumns As String() _
)
void SetDataBinding(
Object dataSource,
string dataMember,
params string[] mappedColumns
)
Parametri
- dataSource
Tipo: System.Object
Oggetto da utilizzare come origine dati per il controllo ListObject.
- dataMember
Tipo: System.String
Oggetto DataMember che specifica la proprietà da associare all'interno dell'oggetto restituito dalla proprietà DataSource.
- mappedColumns
Tipo: array<System.String[]
Nomi di colonne del membro dati che si desidera visualizzare nel controllo ListObject.Per aggiungere una colonna non mappata, includere una stringa vuota nella matrice.
Eccezioni
Eccezione | Condizione |
---|---|
SetDataBindingFailedException | Impossibile eseguire l'associazione all'origine dati specificata. |
ArgumentException | Uno o più argomenti non sono validi. |
ArgumentNullException | L'argomento dataSource è nullriferimento null (Nothing in Visual Basic). |
Note
Il parametro dataSource può essere qualsiasi oggetto che implementa IList, IListSource, IBindingList o IEnumerable.
Il parametro dataMember deve essere una proprietà dell'origine dati che restituisce una raccolta associabile. I membri dati di un'origine DataSet sono ad esempio rappresentati da tabelle.
Esempi
Nell'esempio di codice riportato di seguito vengono creati un oggetto DataSet, un oggetto DataTable e un controllo ListObject. Il controllo ListObject viene quindi associato agli oggetti DataSet e DataTable. Nel controllo ListObject viene tuttavia inclusa una sola delle due possibili colonne di tabella.
Questo esempio è valido per una personalizzazione a livello di documento.
Private Sub ListObject_SetDataBinding3()
Dim Ages As Integer() = {32, 44, 28, 61}
Dim Names As String() = {"Reggie", "Sally", _
"Henry", "Christine"}
' Create a data table with two columns.
Dim ds As New DataSet()
Dim table As DataTable = ds.Tables.Add("Customers")
Dim column1 As New DataColumn("Names", GetType(String))
Dim column2 As New DataColumn("Ages", GetType(Integer))
table.Columns.Add(column1)
table.Columns.Add(column2)
' Add the four rows of data to the table.
Dim row As DataRow
Dim i As Integer
For i = 0 To 3
row = table.NewRow()
row("Names") = Names(i)
row("Ages") = Ages(i)
table.Rows.Add(row)
Next i
' Create the list object.
Dim List1 As Microsoft.Office.Tools.Excel.ListObject = _
Me.Controls.AddListObject(Me.Range("A1", "B4"), "List1")
' Bind the list object to the table.
Dim mappedColumn As String() = {"Names"}
List1.SetDataBinding(ds, "Customers", mappedColumn)
End Sub
private void ListObject_SetDataBinding3()
{
int[] Ages = { 32, 44, 28, 61 };
string[] Names = { "Reggie", "Sally", "Henry", "Christine" };
// Create a data table with two columns.
DataSet ds = new DataSet();
DataTable table = ds.Tables.Add("Customers");
DataColumn column1 = new DataColumn("Names", typeof(string));
DataColumn column2 = new DataColumn("Ages", typeof(int));
table.Columns.Add(column1);
table.Columns.Add(column2);
// Add the four rows of data to the table.
DataRow row;
for (int i = 0; i < 4; i++)
{
row = table.NewRow();
row["Names"] = Names[i];
row["Ages"] = Ages[i];
table.Rows.Add(row);
}
Microsoft.Office.Tools.Excel.ListObject list1 =
this.Controls.AddListObject(this.Range["A1", "B4"], "list1");
// Bind the list object to the table.
string[] mappedColumn = { "Names" };
list1.SetDataBinding(ds, "Customers", mappedColumn);
}
Sicurezza di .NET Framework
- Attendibilità totale per il chiamante immediato. Impossibile utilizzare questo membro in codice parzialmente attendibile. Per ulteriori informazioni, vedere Utilizzo di librerie da codice parzialmente attendibile.