DataGridTableStyle.MappingName DataGridTableStyle.MappingName DataGridTableStyle.MappingName DataGridTableStyle.MappingName Property

Definition

Ruft den Namen ab, mit dem diese Tabelle einer bestimmten Datenquelle zugeordnet wird, oder legt diesen fest.Gets or sets the name used to map this table to a specific data source.

public:
 property System::String ^ MappingName { System::String ^ get(); void set(System::String ^ value); };
public string MappingName { get; set; }
member this.MappingName : string with get, set
Public Property MappingName As String

Eigenschaftswert

Der Name, mit dem diese Tabelle einer bestimmten Datenquelle zugeordnet wird.The name used to map this grid to a specific data source.

Beispiele

Das folgende Codebeispiel erstellt ein Array von Widget Objekten und bindet eine System.Windows.Forms.DataGrid Steuerelement in das Array.The following code example creates an array of Widget objects and binds a System.Windows.Forms.DataGrid control to the array. Anschließend erstellt der Code eine DataGridTableStyle und legt die MappingName auf den Namen der Klasse mit Klammern.The code then creates a DataGridTableStyle and sets the MappingName to the name of the class plus brackets.


    void BindToArray()
    {
        // Create an array of Machine objects (defined below).
        array<Machine^>^ Machines = gcnew array<Machine^>(3);
        Machine^ tempMachine;

        tempMachine = gcnew 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 = gcnew Part();
        p1->PartId = "PartX";
        Part^ p2 = gcnew 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(gcnew array<Part^> {p1, p2}); 

        tempMachine = gcnew Machine();
        tempMachine->Model = "BBB";
        tempMachine->Id = "B100";
        tempMachine->Price = Convert::ToDecimal(1.52);
        Machines[1] = tempMachine;

        tempMachine = gcnew Machine();
        tempMachine->Id = "CCC";
        tempMachine->Model = "B100";
        tempMachine->Price = Convert::ToDecimal(2.14);
        Machines[2] = tempMachine;

        bindedDataGrid->SetDataBinding(Machines, "");
        CreateTableStyle();
    }

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

        DataGridTableStyle^ machineTable = gcnew 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 = gcnew DataGridTextBoxColumn();
        modelColumn->MappingName = "Model";
        modelColumn->HeaderText = "Model";

        DataGridTextBoxColumn^ idColumn = gcnew DataGridTextBoxColumn();
        idColumn->MappingName = "Id";
        idColumn->HeaderText = "Id";

        DataGridTextBoxColumn^ priceColumn = gcnew 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.
        bindedDataGrid->TableStyles->Clear();
        bindedDataGrid->TableStyles->Add(machineTable);

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

private:
    ref class Machine
    {
    private:
        String^ machineModel;
        String^ machineID;
        Decimal machinePrice;

        // Use an ArrayList to create a related collection.
        ArrayList^ machineParts;

    public:
        Machine()
        {
            machineParts = gcnew ArrayList; 
        }   

        property String^ Model
        {
            String^ get()
            {
                return machineModel;
            }
            void set(String^ value)
            {
                machineModel = value;
            }
        }

        property String^ Id
        {
            String^ get()
            {
                return machineID;
            }
            void set(String^ value)
            {
                machineID = value;
            }
        }

        property ArrayList^ Parts
        {
            ArrayList^ get()
            {
                return machineParts;
            }
            void set(ArrayList^ value)
            {
                machineParts = value;
            }
        }

        property Decimal Price
        {
            Decimal get()
            {
                return machinePrice;
            }
            void set(Decimal value)
            {
                machinePrice = value;
            }
        }
    };

private:
    ref class Part
    {
    private:
        String^ partId;

    public:
        property String^ PartId
        {
            String^ get()
            {
                return partId;
            }
            void set(String^ value)
            {
                partId = value;
            }
        }
    };

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;}
    }
}
Sub BindToArray()
    ' Creates an array of Widget objects (defined below).
    Dim Widgets(2) As Widget
    Dim tempWidget As Widget

    tempWidget = New Widget()
    tempWidget.Model = "AAA"
    tempWidget.Id = "A100"
    tempWidget.Price = Convert.ToDecimal(3.8)
    Widgets(0) = tempWidget

    ' The first Widget includes an array of Part objects.
    Dim p1 As New Part()
    p1.PartId = "PartX"
    Dim p2 As New Part()
    p2.PartId = "PartY"

    ' Note that the Widgets.Parts property returns an ArrayList.
    ' Add the parts to the ArrayList using the AddRange method.
    tempWidget.Parts.AddRange(New Part() {p1, p2})

    tempWidget = New Widget()
    tempWidget.Model = "BBB"
    tempWidget.Id = "B100"
    tempWidget.Price = Convert.ToDecimal(1.52)
    Widgets(1) = tempWidget

    tempWidget = New Widget()
    tempWidget.Id = "CCC"
    tempWidget.Model = "B100"
    tempWidget.Price = Convert.ToDecimal(2.14)
    Widgets(2) = tempWidget

    DataGrid1.SetDataBinding(Widgets, "")
    CreateTableStyle()
End Sub


Private Sub CreateTableStyle()
    ' Creates two DataGridTableStyle objects, one for the Widget
    ' array, and one for the Parts ArrayList.
    Dim widgetTable As New DataGridTableStyle()
    ' Sets the MappingName to the class name plus brackets.    
    widgetTable.MappingName = "Widget[]"

    ' Sets the AlternatingBackColor so you can see the difference.
    widgetTable.AlternatingBackColor = System.Drawing.Color.LightBlue

    ' Creates three column styles.
    Dim modelColumn As New DataGridTextBoxColumn()
    modelColumn.MappingName = "Model"
    modelColumn.HeaderText = "Model"

    Dim IdColumn As New DataGridTextBoxColumn()
    IdColumn.MappingName = "Id"
    IdColumn.HeaderText = "Id"

    Dim priceColumn As New DataGridTextBoxColumn()
    priceColumn.MappingName = "Price"
    priceColumn.HeaderText = "Price"
    priceColumn.Format = "c"

    ' Adds the column styles to the grid table style.
    widgetTable.GridColumnStyles.Add(modelColumn)
    widgetTable.GridColumnStyles.Add(IdColumn)
    widgetTable.GridColumnStyles.Add(priceColumn)

    ' Add the table style to the collection, but clear the 
    ' collection first.
    DataGrid1.TableStyles.Clear()
    DataGrid1.TableStyles.Add(widgetTable)

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

    DataGrid1.TableStyles.Add(partsTable)
End Sub


Public Class Widget
    Private myModel As String
    Private myId As String
    Private myPrice As Decimal

    ' Use an ArrayList to create a related collection.
    Private myParts As New ArrayList()

    Public Property Model() As String
        Get
            Return myModel
        End Get
        Set(ByVal Value As String)
            myModel = Value
        End Set
    End Property

    Public Property Id() As String
        Get
            Return myId
        End Get
        Set(ByVal Value As String)
            myId = Value
        End Set
    End Property

    Public Property Parts() As ArrayList
        Get
            Return myParts
        End Get
        Set(ByVal Value As ArrayList)
            myParts = Value
        End Set
    End Property

    Public Property Price() As Decimal
        Get
            Return myPrice
        End Get
        Set(ByVal Value As Decimal)
            myPrice = Value
        End Set
    End Property
End Class


Public Class Part
    Private myPartId As String


    Public Property PartId() As String
        Get
            Return myPartId
        End Get
        Set(ByVal Value As String)
            myPartId = Value
        End Set
    End Property
End Class

Hinweise

Binden der DataGrid in ein stark typisiertes Array von Objekten, der Objekttyp muss öffentliche Eigenschaften enthalten.To bind the DataGrid to a strongly typed array of objects, the object type must contain public properties. Zum Erstellen einer DataGridTableStyle , anzeigt, dass das Array, legen Sie die DataGridTableStyle.MappingName Eigenschaft, um typename , in denen typename durch den Namen des Objekttyps ersetzt wird.To create a DataGridTableStyle that displays the array, set the DataGridTableStyle.MappingName property to typename where typename is replaced by the name of the object type. Beachten Sie, dass die MappingName Eigenschaft Groß-/Kleinschreibung beachtet wird; der Typname muss genau übereinstimmen.Also note that the MappingName property is case-sensitive; the type name must be matched exactly. Finden Sie unter den MappingName -Eigenschaft für ein Beispiel.See the MappingName property for an example.

Sie können auch eine Bindung die DataGrid auf eine ArrayList.You can also bind the DataGrid to an ArrayList. Eine Funktion von der ArrayList besteht darin, dass sie Objekte verschiedenen Typs enthalten, kann aber die DataGrid können nur an eine solche Liste binden, wenn alle Elemente in der Liste des gleichen Typs wie das erste Element sind.A feature of the ArrayList is that it can contain objects of multiple types, but the DataGrid can only bind to such a list when all items in the list are of the same type as the first item. Dies bedeutet, dass alle Objekte müssen entweder vom gleichen Typ sein, oder von derselben Klasse wie das erste Element in der Liste erben müssen.This means that all objects must either be of the same type, or they must inherit from the same class as the first item in the list. Wenn das erste Element in einer Liste ist z. B. eine Control, das zweite Element ist möglicherweise eine TextBox (erbt von Control).For example, if the first item in a list is a Control, the second item could be a TextBox (which inherits from Control). Wenn Sie das erste Element auf der anderen Seite ist eine TextBox, das zweite Objekt kein Control.If, on the other hand, the first item is a TextBox, the second object cannot be a Control. Zudem die ArrayList müssen Elemente darin haben, wenn er gebunden ist.Further, the ArrayList must have items in it when it is bound. Ein leeres ArrayList führt dazu, ein leeres Raster.An empty ArrayList will result in an empty grid. Beim Binden an eine ArrayListlegen die MappingName von der DataGridTableStyle an "ArrayList" (Typname).When binding to an ArrayList, set the MappingName of the DataGridTableStyle to "ArrayList" (the type name).

Der Standardwert ist der Name der Liste von verwaltet die CurrencyManager für dieses Raster.The default is the name of the list managed by the CurrencyManager for this grid. Die CurrencyManager für die DataGridTableStyle wird festgelegt, die DataGridTableStyle Konstruktor.The CurrencyManager for the DataGridTableStyle is set using the DataGridTableStyle constructor.

Die MappingNameChanged Ereignis tritt auf, wenn die MappingName -Wert ändert.The MappingNameChanged event occurs when the MappingName value changes.

Gilt für:

Siehe auch