This documentation is archived and is not being maintained.

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)

[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class 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>


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

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0