2

フィールド、コンテンツ タイプ、およびリストの定義に XML を使用して機能を作成しています。デザイナーでビューを編集したり、コードや PowerShell を使用して何かを変更したりして、やりたいことを行う方法には特に興味がありません。

デフォルトの「タイトル」列を持ついくつかのコンテンツ タイプを作成しましたが、コンテンツ タイプの定義で「名前」の DisplayName を指定しました。すごい、簡単でした!

そのため、Visual Studio 2010 アイテム テンプレートを使用してそのコンテンツ タイプに基づいてリスト定義 (およびリスト インスタンス) を作成し、展開すると、どこにでも「タイトル」が表示されます...ビューでは、「タイトル」は列名です。新しいフォーム、編集フォーム、または表示フォームに入ると、「タイトル」がフィールド ラベルになります。大野...

一日の大半をこれで遊んでみると、リスト定義の MetaData 要素の Fields 要素内で、「Name」の DisplayName を持つ「Title」フィールドを指定すると、描画時にリスンすることがわかりました。新規、編集、表示用のフォームですが、リストを表示すると、「タイトル」の列名が表示されます。

ViewFields 要素では、LinkTitle が参照されるフィールドであり、DisplayName 属性を Name に設定しましたが、無視されます。また、「オプションのテキスト」以外の MSDN ドキュメントがないように見える Alias 属性も試してみましたが、うまくいきませんでした (すばらしい仕事をしています)。

リストビューのタイトル列を「名前」の見出しで表示するための魔法の XML に関するアイデア。

4

2 に答える 2

2

最終的に、リスト定義の MetaData 要素の Fields 要素に LinkTitle を明示的に含め、Field の DisplayName 属性を「Name」に設定すると、それで目的が達成されることがわかりました。

<Field Name="LinkTitle"
       ID="{82642ec8-ef9b-478f-acf9-31f7d45fbc31}"
       DisplayName="Name"/>
于 2012-08-02T14:54:08.427 に答える
0
      <?xml version="1.0" encoding="utf-8"?>
      <Elements xmlns="http://schemas.microsoft.com/sharepoint/">
                <!-- Parent ContentType: Item (0x01) -->

     <Field  ID="{87F3ABFD-2F63-4E10-802E-9BE7E1740137}"
      Name="Description"          
      DisplayName="Description"
      Group="My Custom Columns"
      Type="Note"
      DisplaceOnUpgrade="TRUE" />
    <ContentType ID="0x0100dcbde47be1774e64a169b55bc1c956b4"
           Name="AddUserToGroup - ContentType1"
           Group="Custom Content Types"
           Description="My Content Type"
           Inherits="FALSE"
           Overwrite="TRUE"
           Version="0">
<FieldRefs>
  <FieldRef ID="{13CF49E1-1961-4794-8FDD-B045F97D102F}" Name="Title"
  DisplayName="Name"      Required="TRUE" Sealed="TRUE" ShowInDisplayForm="TRUE"
  ShowInEditForm="TRUE" ShowInNewForm="TRUE"  />
  <FieldRef ID="{87F3ABFD-2F63-4E10-802E-9BE7E1740137}" 
  Name="Description" DisplayName="Description"/>
</FieldRefs>

于 2013-02-28T15:22:53.527 に答える