<p>I have a document library with about 50 available content types. This document library is divided into  several folders. When a user cliks the "New" button in a folder, all available content types are offered. I need to limit the content types according to the folder. For example, in the folder "Legal" a want to have only content types containing legal documents. I tried to use the UniqueContentTypeOrder property of SPFolder but it does not work. What is wrong?</p>

<p>private void CreateFolder(SPFolder parent,  string name)
        {
            SPFolder z = parent.SubFolders.Add(name);
            List col = new List();</p>

<pre><code>        foreach (SPContentType type in myDocumentLibrary.ContentTypes)
        {
            if (ContentTypeMatchesName(name, type))
            {
                col.Add(type);
            }
        }
        z.UniqueContentTypeOrder = col;
        z.Update();
    }
</code></pre>

Have you looked at
this
article by Ton Stegeman?