Auf diese Eigenschaft wird zugegriffen, um den Spaltennamen des Eltern-Schlüssels abzufragen.
Kombinierte Schlüssel können mit einem "\t" als Trennzeichen übergeben werden. Ihr Datenprovider sollte also z.B. als Parent-Felder "KundenID\tBelegID" und die entsprechend passenden Kind-Felder liefern. In der ApplyFilter()-Methode des ITable-Interfaces kommen dann die Werte auch genau so an, ein Filterstring könnte wie folgt aussehen:
"KundenID\tBelegID=22\t14"
Die GetChildTable()-Methode des ITableRow-Interfaces bekommt direkt ein ITableRelation-Interface, so dass Sie auch dort Zugriff auf die kombinierten Felder haben.
class DataRelationWrapper : ITableRelation { private DataRelation _dataRelation; public DataRelationWrapper(DataRelation dataRelation) { _dataRelation = dataRelation; } #region IDataRelation Members public string RelationName { get { return _dataRelation.RelationName; } } public string ParentColumnName { get { return _dataRelation.ParentColumns[0].ColumnName; } } public string ChildColumnName { get { return _dataRelation.ChildColumns[0].ColumnName; } } public string ParentTableName { get { return _dataRelation.ParentColumns[0].Table.TableName; } } public string ChildTableName { get { return _dataRelation.ChildColumns[0].Table.TableName; } } #endregion }
Class DataRelationWrapper Implements ITableRelation Private _dataRelation As DataRelation Public Sub New(dataRelation As DataRelation) _dataRelation = dataRelation End Sub #region IDataRelation Members Public Readonly Property RelationName() As String Get Return _dataRelation.RelationName End Get End Property Public Readonly Property ParentColumnName() As String Get Return _dataRelation.ParentColumns(0).ColumnName End Get End Property Public Readonly Property ChildColumnName() As String Get Return _dataRelation.ChildColumns(0).ColumnName End Get End Property Public Readonly Property ParentTableName() As String Get Return _dataRelation.ParentColumns(0).Table.TableName End Get End Property Public Readonly Property ChildTableName() As String Get Return _dataRelation.ChildColumns(0).Table.TableName End Get End Property #End Region End Class
Plattformen: Windows 10 (Version 21H2 - 22H2), Windows 11 (21H2 - 23H2), Windows Server 2016 - 2022
.NET: .NET Framework 4.8, .NET 6, .NET 7, .NET 8