Domanda

Abbiamo un sito blog che è stato giá distribuito alla produzione. Ora abbiamo bisogno di aggiungere un nuovo modulo di visualizzazione personalizzato per alcune delle liste nel blog. Per i nuovi blog di questo tipo, non è un problema in quanto le nuove forme vengono aggiunti creazione del blog in base ai defintions elenco personalizzato. Ma qual è il modo migliore per aggiungere i moduli per i blog esistenti? I bisogni soluzione da mantenibili, forme non unghosted etc.

È stato utile?

Soluzione

È possibile creare RenderingTemplate personalizzato, sulla base del modello di rendering ListForm standard distribuirlo nella cartella CONTROLTEMPLATES, e quindi a livello di codice impostare SPList.ContentTypes [0] proprietà .EditFormTemplateName, NewFormTemplateName, e DisplayFormTemplateName al nome di questo modello.

Questa soluzione è testato e funziona in ambienti di produzione, in modo da poter chiedere per i dettagli - io aggiornare il post. Per rendere i campi, stiamo utilizzando un controllo personalizzato, che eredita da ListFieldIterator e override metodo Render, dove si usa SPContext.Current.FormContext.FieldControlCollection rendere campi controlli.

Ho una soluzione di prova che dimostra questo metodo (è necessario modificare un elenco di URL hardcoded ricevitore funzione per farlo funzionare):

P.S. Considero Sharepoint Designer approccio non è accettabile per voi per alcuni motivi, anche se è il modo più semplice qui.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top