SPFieldCollection の AddFieldAsXML メソッドを使用して、新しいフィールドをリストに追加しています。メソッドは問題なく正常に実行されます。リストを表示すると、列ヘッダーが表示されます。ただし、値が列に表示されることはありません。リストに追加された後のフィールドは次のようになります。この xml は、 http://tw-s1-m4400-007:4016/_vti_bin/owssvr.dll?Cmd=ExportList&List= {1F87433F-50E1-46C5-A138-00E1CF7E5801}を使用して派生したリスト スキーマから抜粋したものです。
このコードは 2007 年にはうまく機能しますが、2010 年には機能しません。
<Field ID="{e24ccb96-35fd-44e5-b7d1-4150dbbc9a64}" Type="Computed" ReadOnly="TRUE"
Name="My_x0020_Status" DisplayName="MyStatus" ShowInEditForm="TRUE" ClassInfo="Icon"
AuthoringInfo="(My status)" SourceID="http://schemas.microsoft.com/sharepoint/v3"
StaticName="MyStatus" FromBaseType="TRUE">
<FieldRefs>
<FieldRef Name="ID" />
<FieldRef Name="Title" />
</FieldRefs>
<DisplayPattern>
<HTML>
<![CDATA[ <a href="form.htm?ID="
]]>
</HTML>
<Column Name="ID" />
<HTML>
<![CDATA[ ">
]]>
</HTML>
<Column Name="Title" />
<HTML>
<![CDATA[ </a>
]]>
</HTML>
</DisplayPattern>
</Field>