.NET Framework Class Library for Silverlight
OperatingSystem.Clone Method
Creates an OperatingSystem object that is identical to this instance.
Namespace: System
Assembly: mscorlib (in mscorlib.dll)
Syntax
Visual Basic (Declaration)
Public Function Clone As Object
C#
public Object Clone()
Examples
The following code example illustrates the use of the Clone method to make a copy of an OperatingSystem object. The clone is compared with the original object to show that they are not the same object.
Visual Basic
' Example for the OperatingSystem.Clone method. Module Example ' Copy, clone, and duplicate an OperatingSystem object. Sub CopyOperatingSystemObjects(ByVal outputBlock As System.Windows.Controls.TextBlock) ' The Version object does not need to correspond to an ' actual OS version. Dim verMMBVer As New Version(5, 6, 7, 8) Dim opCreate1 As New _ OperatingSystem(PlatformID.Win32NT, verMMBVer) ' Create another OperatingSystem object with the same ' parameters as opCreate1. Dim opCreate2 As New _ OperatingSystem(PlatformID.Win32NT, verMMBVer) ' Clone opCreate1 and copy the opCreate1 reference. Dim opClone As OperatingSystem = _ CType(opCreate1.Clone(), OperatingSystem) Dim opCopy As OperatingSystem = opCreate1 ' Compare the various objects for equality. outputBlock.Text &= String.Format("{0,-50}{1}", _ "Is the second object the same as the original?", _ opCreate1.Equals(opCreate2)) & vbCrLf outputBlock.Text &= String.Format("{0,-50}{1}", _ "Is the object clone the same as the original?", _ opCreate1.Equals(opClone)) & vbCrLf outputBlock.Text &= String.Format("{0,-50}{1}", _ "Is the copied object the same as the original?", _ opCreate1.Equals(opCopy)) & vbCrLf End Sub Public Sub Demo(ByVal outputBlock As System.Windows.Controls.TextBlock) outputBlock.Text &= String.Format( _ "This example of OperatingSystem.Clone( ) " & _ "generates the following output." & vbCrLf) & vbCrLf outputBlock.Text &= String.Format( _ "Create an OperatingSystem object, and then " & _ "create another object with the " & vbCrLf & _ "same parameters. Clone and copy the " & _ "original object, and then compare " & vbCrLf & _ "each object with the original using the " & _ "Equals( ) method. Equals( ) " & vbCrLf & _ "returns true only when both " & _ "references refer to the same object." & vbCrLf) & vbCrLf CopyOperatingSystemObjects(outputBlock) End Sub End Module ' This example of OperatingSystem.Clone( ) generates the following output. ' ' Create an OperatingSystem object, and then create another object with the ' same parameters. Clone and copy the original object, and then compare ' each object with the original using the Equals( ) method. Equals( ) ' returns true only when both references refer to the same object. ' ' Is the second object the same as the original? False ' Is the object clone the same as the original? False ' Is the copied object the same as the original? True
C#
// Example for the OperatingSystem.Clone method. using System; class Example { // Copy, clone, and duplicate an OperatingSystem object. static void CopyOperatingSystemObjects(System.Windows.Controls.TextBlock outputBlock) { // The Version object does not need to correspond to an // actual OS version. Version verMMBVer = new Version(5, 6, 7, 8); OperatingSystem opCreate1 = new OperatingSystem(PlatformID.Win32NT, verMMBVer); // Create another OperatingSystem object with the same // parameters as opCreate1. OperatingSystem opCreate2 = new OperatingSystem(PlatformID.Win32NT, verMMBVer); // Clone opCreate1 and copy the opCreate1 reference. OperatingSystem opClone = (OperatingSystem)opCreate1.Clone(); OperatingSystem opCopy = opCreate1; // Compare the various objects for equality. outputBlock.Text += String.Format("{0,-50}{1}", "Is the second object the same as the original?", opCreate1.Equals(opCreate2)) + "\n"; outputBlock.Text += String.Format("{0,-50}{1}", "Is the object clone the same as the original?", opCreate1.Equals(opClone)) + "\n"; outputBlock.Text += String.Format("{0,-50}{1}", "Is the copied object the same as the original?", opCreate1.Equals(opCopy)) + "\n"; } public static void Demo(System.Windows.Controls.TextBlock outputBlock) { outputBlock.Text += String.Format( "This example of OperatingSystem.Clone( ) " + "generates the following output.\n") + "\n"; outputBlock.Text += String.Format( "Create an OperatingSystem object, and then " + "create another object with the \n" + "same parameters. Clone and copy the original " + "object, and then compare \n" + "each object with the original " + "using the Equals( ) method. Equals( ) \n" + "returns true only when both " + "references refer to the same object.\n") + "\n"; CopyOperatingSystemObjects(outputBlock); } } /* This example of OperatingSystem.Clone( ) generates the following output. Create an OperatingSystem object, and then create another object with the same parameters. Clone and copy the original object, and then compare each object with the original using the Equals( ) method. Equals( ) returns true only when both references refer to the same object. Is the second object the same as the original? False Is the object clone the same as the original? False Is the copied object the same as the original? True */
Version Information
Silverlight
Supported in: 5, 4, 3Silverlight for Windows Phone
Supported in: Windows Phone OS 7.1, Windows Phone OS 7.0XNA Framework
Supported in: Xbox 360, Windows Phone OS 7.0Platforms
For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.
See Also