﻿<?xml version="1.0" encoding="utf-8"?><Type Name="CodeNamespace" FullName="System.CodeDom.CodeNamespace"><TypeSignature Language="C#" Value="public class CodeNamespace : System.CodeDom.CodeObject" Maintainer="auto" /><TypeSignature Language="ILAsm" Value=".class public auto ansi serializable beforefieldinit CodeNamespace extends System.CodeDom.CodeObject" /><AssemblyInfo><AssemblyName>System</AssemblyName><AssemblyPublicKey>[00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 00]</AssemblyPublicKey><AssemblyVersion>1.0.3300.0</AssemblyVersion><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ThreadSafetyStatement>Gtk# is thread aware, but not thread safe; See the &lt;link location="node:gtk-sharp/programming/threads"&gt;Gtk# Thread Programming&lt;/link&gt; for details.</ThreadSafetyStatement><Base><BaseTypeName>System.CodeDom.CodeObject</BaseTypeName></Base><Interfaces /><Attributes><Attribute><AttributeName>System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)</AttributeName></Attribute><Attribute><AttributeName>System.Runtime.InteropServices.ComVisible(true)</AttributeName></Attribute></Attributes><Docs><remarks><attribution license="cc4" from="Microsoft" modified="false" /><para><see cref="T:System.CodeDom.CodeNamespace" /> can be used to represent a namespace declaration.</para><para>The <see cref="P:System.CodeDom.CodeNamespace.Name" /> property specifies the name of the namespace. The <see cref="P:System.CodeDom.CodeNamespace.Imports" /> property contains the namespace import directives for the namespace. The <see cref="P:System.CodeDom.CodeNamespace.Types" /> property contains the type declarations for the namespace. The <see cref="P:System.CodeDom.CodeNamespace.Comments" /> property contains the comments that apply at the namespace level.</para><para>In some languages, a namespace can function as a container for type declarations; all types in the same namespace are accessible without using fully-qualified type references, if the there is no conflict between type names.</para><block subset="none" type="note"><para>Use fully qualified type references to avoid potential ambiguity.</para></block></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Represents a namespace declaration.</para></summary></Docs><Members><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public CodeNamespace ();" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters /><Docs><remarks>After the object has be constructed, the <see cref="M:System.CodeDom.CodeNamespace.Name" /> property
has to be set before the Code Generator is called on it.</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.CodeDom.CodeNamespace" /> class.</para></summary></Docs></Member><Member MemberName=".ctor"><MemberSignature Language="C#" Value="public CodeNamespace (string name);" /><MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string name) cil managed" /><MemberType>Constructor</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue /><Parameters><Parameter Name="name" Type="System.String" /></Parameters><Docs><remarks><code lang="C#">
using System;
using System.Text;
using System.IO;
using System.CodeDom;
using System.CodeDom.Compiler;
using Microsoft.CSharp;

/*	Outputs an empty namespace called Mono.CodeDomDemo in c#
 *	namespace Mono.CodeDomDemo {
 * 
 *	}
 */
class CodeDomDemo {
	public static int Main(string[] args) {
		// Create namespace
		CodeNamespace demoNs= new CodeNamespace("Mono.CodeDomDemo");
		// Generate c# code
		CSharpCodeProvider provider = new CSharpCodeProvider();
		ICodeGenerator codeGen = provider.CreateGenerator ();
		StringWriter sw  = new StringWriter(new StringBuilder());
		codeGen.GenerateCodeFromNamespace(demoNs, sw,new CodeGeneratorOptions());
		Console.WriteLine(sw.ToString());
		return(0);
	}
}
</code></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Initializes a new instance of the <see cref="T:System.CodeDom.CodeNamespace" /> class using the specified name.</para></summary><param name="name"><attribution license="cc4" from="Microsoft" modified="false" />The name of the namespace being declared. </param></Docs></Member><Member MemberName="Comments"><MemberSignature Language="C#" Value="public System.CodeDom.CodeCommentStatementCollection Comments { get; }" /><MemberSignature Language="ILAsm" Value=".property instance class System.CodeDom.CodeCommentStatementCollection Comments" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.CodeDom.CodeCommentStatementCollection</ReturnType></ReturnValue><Docs><value><see cref="T:System.CodeDom.CodeCommentStatementCollection" /> object, which is a collection of comments
on the namespace.</value><remarks><code lang="C#">
/*	Creates namespace like thus when c# code is generated.
/*	// Demo Namespace
/*	namespace Mono.CodeDomDemo {
/*
/*	}
...
CodeNamespace demoNs= new CodeNamespace("Mono.CodeDomDemo");
demoNs.Comments.Add(new CodeCommentStatement("Demo Namespace"));
...
</code></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the comments for the namespace.</para></summary></Docs></Member><Member MemberName="Imports"><MemberSignature Language="C#" Value="public System.CodeDom.CodeNamespaceImportCollection Imports { get; }" /><MemberSignature Language="ILAsm" Value=".property instance class System.CodeDom.CodeNamespaceImportCollection Imports" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.CodeDom.CodeNamespaceImportCollection</ReturnType></ReturnValue><Docs><value><see cref="T:System.CodeDom.CodeNamespaceImportCollection" /> object, which is a collection of
imports applicable to the namespace.</value><remarks><code lang="C#">
/*	Creates namespace like thus when c# code is generated.
/*	namespace Mono.CodeDomDemo {
/*		using System.Data;
/*	}
...
CodeNamespace demoNs= new CodeNamespace("Mono.CodeDomDemo");
demoNs.Imports.Add(new CodeNamespaceImport("System.Data"));
...
</code></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the collection of namespace import directives used by the namespace.</para></summary></Docs></Member><Member MemberName="Name"><MemberSignature Language="C#" Value="public string Name { get; set; }" /><MemberSignature Language="ILAsm" Value=".property instance string Name" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.String</ReturnType></ReturnValue><Parameters></Parameters><Docs><value>Name of the generated Namespace.</value><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets or sets the name of the namespace.</para></summary></Docs></Member><Member MemberName="PopulateComments"><MemberSignature Language="C#" Value="public event EventHandler PopulateComments;" /><MemberSignature Language="ILAsm" Value=".event class System.EventHandler PopulateComments" /><MemberType>Event</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.EventHandler</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An event that will be raised the first time the <see cref="P:System.CodeDom.CodeNamespace.Comments" /> collection is accessed.</para></summary></Docs></Member><Member MemberName="PopulateImports"><MemberSignature Language="C#" Value="public event EventHandler PopulateImports;" /><MemberSignature Language="ILAsm" Value=".event class System.EventHandler PopulateImports" /><MemberType>Event</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.EventHandler</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An event that will be raised the first time the <see cref="P:System.CodeDom.CodeNamespace.Imports" /> collection is accessed.</para></summary></Docs></Member><Member MemberName="PopulateTypes"><MemberSignature Language="C#" Value="public event EventHandler PopulateTypes;" /><MemberSignature Language="ILAsm" Value=".event class System.EventHandler PopulateTypes" /><MemberType>Event</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.EventHandler</ReturnType></ReturnValue><Parameters /><Docs><remarks>To be added</remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>An event that will be raised the first time the <see cref="P:System.CodeDom.CodeNamespace.Types" /> collection is accessed.</para></summary></Docs></Member><Member MemberName="Types"><MemberSignature Language="C#" Value="public System.CodeDom.CodeTypeDeclarationCollection Types { get; }" /><MemberSignature Language="ILAsm" Value=".property instance class System.CodeDom.CodeTypeDeclarationCollection Types" /><MemberType>Property</MemberType><AssemblyInfo><AssemblyVersion>1.0.5000.0</AssemblyVersion><AssemblyVersion>2.0.0.0</AssemblyVersion><AssemblyVersion>4.0.0.0</AssemblyVersion></AssemblyInfo><ReturnValue><ReturnType>System.CodeDom.CodeTypeDeclarationCollection</ReturnType></ReturnValue><Docs><value>To be added: an object of type 'CodeTypeDeclarationCollection'</value><remarks>This is a  collection of <see cref="T:System.CodeDom.CodeTypeDeclaration" />s that reside inside the Namespace.


<example><code lang="C#">
// This example creates a Mono.CodeDomDemo namespace and adds a new class 'Hello' to it.
...
// Create Hello class
CodeTypeDeclaration helloClass=new CodeTypeDeclaration("Hello");
helloClass.IsClass=true;
...
CodeNamespace testNs= new CodeNamespace("Mono.CodeDomDemo");
testNs.Types.Add(helloClass);
  </code></example></remarks><summary><attribution license="cc4" from="Microsoft" modified="false" /><para>Gets the collection of types that the namespace contains.</para></summary></Docs></Member></Members></Type>