ListObject.SetDataBinding-Methode (Object, String, array<String )
Bindet ein ListObject-Steuerelement an einen angegebenen Datenmember einer Datenquelle und zeigt nur die angegebenen Spalten dieses Datenmembers an.
Namespace: Microsoft.Office.Tools.Excel
Assembly: Microsoft.Office.Tools.Excel (in Microsoft.Office.Tools.Excel.dll)
Syntax
'Declaration
Sub SetDataBinding ( _
dataSource As Object, _
dataMember As String, _
ParamArray mappedColumns As String() _
)
void SetDataBinding(
Object dataSource,
string dataMember,
params string[] mappedColumns
)
Parameter
- dataSource
Typ: System.Object
Das Objekt, das als Datenquelle für das ListObject-Steuerelement verwendet werden soll.
- dataMember
Typ: System.String
Der DataMember, der die Eigenschaft innerhalb des von der DataSource zurückgegebenen Objekts angibt, zu der die Bindung hergestellt werden soll.
- mappedColumns
Typ: array<System.String[]
Die Namen der Spalten im Datenmember, den Sie im ListObject-Steuerelement anzeigen möchten.In das Array wird eine leere Zeichenfolge eingeschlossen, um eine nicht zugeordnete Spalte hinzuzufügen.
Ausnahmen
Ausnahme | Bedingung |
---|---|
SetDataBindingFailedException | Konnte keine Bindung zur angegeben Datenquelle herstellen. |
ArgumentException | Mindestens ein Argument ist ungültig. |
ArgumentNullException | Das dataSource-Argument ist nullein Nullverweis (Nothing in Visual Basic). |
Hinweise
Der dataSource-Parameter kann jedes Objekt sein, das IList, IListSource, IBindingList oder IEnumerable implementiert.
Der dataMember-Parameter muss eine Eigenschaft der Datenquelle sein, die eine bindungsfähige Auflistung zurückgibt.So hat beispielsweise eine DataSet-Quelle Tabellen als Datenmember.
Beispiele
Im folgenden Codebeispiel werden ein DataSet, eine DataTable und ein ListObject erstellt.Anschließend wird das ListObject an das DataSet und die DataTable gebunden. Dabei wird jedoch nur eine der beiden möglichen Spalten in das ListObject eingeschlossen.
Dieses Beispiel bezieht sich auf eine Anpassung auf Dokumentebene.
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);
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.