Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original
Dieser Artikel wurde noch nicht bewertet - Dieses Thema bewerten.

DataGridTableStyle.MappingName-Eigenschaft

Ruft den Namen ab, mit dem diese Tabelle einer bestimmten Datenquelle zugeordnet wird, oder legt diesen fest.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
public string MappingName { get; set; }

Eigenschaftswert

Typ: System.String
Der Name, mit dem diese Tabelle einer bestimmten Datenquelle zugeordnet wird.

Das DataGrid kann nur an ein stark typisiertes Array von Objekten gebunden werden, wenn der Objekttyp öffentliche Eigenschaften enthält. Legen Sie zum Erstellen eines DataGridTableStyle, der das Array anzeigt, die DataGridTableStyle.MappingName-Eigenschaft auf typename fest, wobei typename durch den Namen des Objekttyps ersetzt wird. Bei der MappingName-Eigenschaft wird zwischen Groß- und Kleinschreibung unterschied unterschieden, achten Sie daher darauf, dass der Typname exakt überstimmt. Ein Beispiel finden Sie unter der MappingName-Eigenschaft.

Sie können das DataGrid auch an eine ArrayList binden. Ein Feature der ArrayList ist, dass sie Objekte verschiedenen Typs enthalten kann. Das DataGrid kann aber nur an eine Liste gebunden werden, in der alle Elemente von demselben Typ wie das erste Element sind. Das heißt, dass alle Objekte denselben Typ haben oder von derselben Klasse erben müssen wie das erste Listenelement. Wenn z. B. das erste Element in der Liste ein Control ist, kann das zweite Element eine TextBox sein (die von Control erbt). Wenn jedoch das erste Element eine TextBox ist, kann das zweite Objekt kein Control sein. Eine ArrayList muss außerdem Elemente enthalten, wenn es gebunden wird. Eine leere ArrayList ergibt ein leeres Datenblatt. Legen Sie zum Binden an eine ArrayList den MappingName des DataGridTableStyle auf "ArrayList" (den Typnamen) fest.

Der Standardname ist der Name der Liste, die vom CurrencyManager für diese Tabelle verwaltet wird. Der CurrencyManager für den DataGridTableStyle wird unter Verwendung des DataGridTableStyle-Konstruktors festgelegt.

Das MappingNameChanged-Ereignis tritt ein, wenn sich der MappingName-Wert ändert.

Im folgenden Codebeispiel wird ein Array von Widget-Objekten erstellt und ein System.Windows.Forms.DataGrid-Steuerelement an das Array gebunden. Im Code wird dann ein DataGridTableStyle erstellt und der MappingName auf den Namen der Klasse mit Klammern festgelegt.



private void BindToArray()
{
    // Create an array of Machine objects (defined below).
    Machine[] Machines = new Machine[3];
    Machine tempMachine;

    tempMachine= new Machine();
    tempMachine.Model = "AAA";
    tempMachine.Id= "A100";
    tempMachine.Price= Convert.ToDecimal(3.80);
    Machines[0]=tempMachine;

    // The first Machine includes an array of Part objects.
    Part p1 = new Part();
    p1.PartId= "PartX";
    Part p2 = new Part();
    p2.PartId= "PartY";

    // Note that the Machines.Parts property returns an ArrayList.
    // Add the parts to the ArrayList using the AddRange method.
    tempMachine.Parts.AddRange (new Part[]{p1, p2});;

    tempMachine= new Machine();
    tempMachine.Model = "BBB";
    tempMachine.Id= "B100";
    tempMachine.Price= Convert.ToDecimal(1.52);
    Machines[1]=tempMachine;

    tempMachine= new Machine();
    tempMachine.Id= "CCC";
    tempMachine.Model = "B100";
    tempMachine.Price= Convert.ToDecimal(2.14);
    Machines[2]=tempMachine;

    dataGrid1.SetDataBinding(Machines, "");
    CreateTableStyle();
}

private void CreateTableStyle()
{
    // Creates two DataGridTableStyle objects, one for the Machine
    // array, and one for the Parts ArrayList.

    DataGridTableStyle MachineTable = new DataGridTableStyle();
    // Sets the MappingName to the class name plus brackets.    
    MachineTable.MappingName= "Machine[]";

    // Sets the AlternatingBackColor so you can see the difference.
    MachineTable.AlternatingBackColor= System.Drawing.Color.LightBlue;

    // Creates three column styles.
    DataGridTextBoxColumn modelColumn = new DataGridTextBoxColumn();
    modelColumn.MappingName= "Model";
    modelColumn.HeaderText= "Model";

    DataGridTextBoxColumn IdColumn = new DataGridTextBoxColumn();
    IdColumn.MappingName= "Id";
    IdColumn.HeaderText= "Id";

    DataGridTextBoxColumn priceColumn = new DataGridTextBoxColumn();
    priceColumn.MappingName= "Price";
    priceColumn.HeaderText= "Price";
    priceColumn.Format = "c";

    // Adds the column styles to the grid table style.
    MachineTable.GridColumnStyles.Add(modelColumn);
    MachineTable.GridColumnStyles.Add(IdColumn);
    MachineTable.GridColumnStyles.Add(priceColumn);

    // Add the table style to the collection, but clear the 
    // collection first.
    dataGrid1.TableStyles.Clear();
    dataGrid1.TableStyles.Add(MachineTable);

    // Create another table style, one for the related data.
    DataGridTableStyle partsTable = new DataGridTableStyle();
    // Set the MappingName to an ArrayList. Note that you need not 
    // include brackets.
    partsTable.MappingName= "ArrayList";
    DataGridTextBoxColumn partIdColumn = new DataGridTextBoxColumn();
    partIdColumn.MappingName= "PartID";
    partIdColumn.HeaderText = "Part ID";
    partsTable.GridColumnStyles.Add(partIdColumn);

    dataGrid1.TableStyles.Add(partsTable);

}
public class Machine
{
    private string model;
    private string id;
    private decimal price;

    // Use an ArrayList to create a related collection.
    private ArrayList parts = new ArrayList();

    public string Model
    {
        get{return model;}
        set{model=value;}
    }
    public string Id
    {
        get{return id;}
        set{id = value;}
    }
    public ArrayList Parts
    {
        get{return parts;}
        set{parts = value;}
    }

    public decimal Price
    {
        get{return price;}
        set{price = value;}
    }
}

public class Part
{
    private string partId;

    public string PartId
    {
        get{return partId;}
        set{partId = value;}
    }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.
Fanden Sie dies hilfreich?
(1500 verbleibende Zeichen)

Community-Beiträge

HINZUFÜGEN
© 2013 Microsoft. Alle Rechte vorbehalten.