1、首先,打開VS創建兩個List Definition,分別是Address和City,如下圖:
2、City列表里修改Title為City Name,其實內部名稱還是Title,注意一下:
3、給City的列表實例,添加幾個值,用來測試使用,如下:
4、在Address列表里添加幾個字段,分別是CityName(LookUp類型)和HomeAddress(Single Line of Text),如下:
5、查看Address列表的Schema.Xml,尤其是Fields節點,也就是字段,如下圖:
6、修改LookUp字段類型的Xml,主要是CityName的List屬性和ShowField屬性,分別是關聯的列表的相對地址和顯示字段,如下:
<Fields> <Field Name="Title" ID="{fa564e0f-0c70-4ab9-b863-0177e6ddd247}" DisplayName="$Resources:core,Title;" Type="Text" Required="TRUE" SourceID="http://schemas.microsoft.com/sharepoint/v3" StaticName="Title" MaxLength="255" /> <Field Name="CityName" ID="{5aea19dc-5b16-41e1-ad59-ca6ad2e585ed}" DisplayName="CityName" Type="Lookup" List="Lists/City" ShowField="Title"/> <Field Name="HomeAddress" ID="{caf96d2a-6e41-4ea8-8dfc-13fe1c3a2d09}" DisplayName="HomeAddress" Type="Text" /> </Fields>
7、在Address列表的列表實例中插入測試數據,注意查閱項的格式,ID;#Field Value,如下圖:
8、部署列表,可以在網站內容中看到Address和City兩個列表,如下圖:
9、查看Address,我們的查閱項字段(CityName)顯示正常,如下圖:
10、在列表設置中,查看欄的屬性,可以看到關聯的列表是City,關聯的列是City Name,注意關聯的時候要用內部字段,顯示的時候會是字段名稱,如下圖:
11、編輯項目,可以看到查閱項字段,如下:
總結
一直創建查閱項字段,List的值設置的都是Guid,然后代碼創建的時候,定義的列表沒有Guid,所以很糾結創建查閱項字段;偶然的一個想法,用相對地址關聯,嘗試一下也可以,所以拿出來分享給大家。
當然,自己也試過,給列表定義New一個Guid,然后用它關聯,結果發現並沒有成功,或許是因為部署順序的問題或者其他原因,自己也未深究。好了就到這里,希望本文能對需要的人有所幫助。