Triplet Class


Provides a basic utility class that is used to store three related objects.

Namespace:   System.Web.UI
Assembly:  System.Web (in System.Web.dll)


public sealed class Triplet


Initializes a new instance of the Triplet class.

System_CAPS_pubmethodTriplet(Object, Object)

Initializes a new instance of the Triplet class and sets the first two objects.

System_CAPS_pubmethodTriplet(Object, Object, Object)

Initializes a new instance of the Triplet class with the provided three objects.


Determines whether the specified object is equal to the current object.(Inherited from Object.)


Serves as the default hash function. (Inherited from Object.)


Gets the Type of the current instance.(Inherited from Object.)


Returns a string that represents the current object.(Inherited from Object.)


Gets or sets the first object of the triplet.


Gets or sets the second object of the triplet.


Gets or sets the third object of the triplet.

The Triplet class is used as a basic structure to store three related objects. It is a utility class that is used in various ways throughout ASP.NET. You can use the Triplet class in your own code anywhere that you need a structure to contain three related objects and where data-hiding is not essential. The Triplet class does not encapsulate its object references, First, Second, and Third, in properties; it exposes them directly to all calling code as public class fields.

The following example uses a Triplet object to hold three integer values and another Triplet to hold three label controls.


When accessing reference types as members of a Triplet, only generic Object methods are available for that member.

<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">
<script runat="server">

    protected void Page_Load(object sender, EventArgs e)
        Triplet circle = new Triplet(5, 7, 3);
        lblCircle.Text = "X position: " + circle.First +
            "<br />Y position: " + circle.Second +
            "<br />Radius: " + circle.Third;

        Triplet labels = new Triplet(Label1, Label2, Label3);
        Label1.Text = "Type: " + labels.First.GetType().ToString();
        Label2.Text = "ToString: " + labels.Second.ToString();
        Label3.Text = "HashCode: " + labels.Third.GetHashCode();

<html xmlns="" >
<head runat="server">
    <title>Triplet Example</title>
    <form id="form1" runat="server">
        <h3>Circle Dimensions</h3>
        <asp:Label ID="lblCircle" runat="server" /><br /><br />
        <h3>Labels Within a Triplet</h3>
        Note that only object methods are available to members of a triplet regardless of type.<br />
        <asp:Label ID="Label1" runat="server" /><br />
        <asp:Label ID="Label2" runat="server" /><br />
        <asp:Label ID="Label3" runat="server" /></div>

.NET Framework
Available since 1.1

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top