Processamento da propriedade Tipo do campo personalizado
Muitas características dos tipos campo são universais; de exemplo, todos os tipos campo possuem uma propriedade que permita a serem classificados, que pode ser definida como true ou false. Mas personalizado tipos campo costumam têm variável propriedades que só fazem sentido dados a finalidade e a subjacente tipo de dados da tipo de campo. Considere, de exemplo, um tipo de campo expressão regular cujos valores são seqüências de caracteres que coincidem com um expressão regular especificado. Mas o expressão regular específico que precisa ser comparadas irá variar de uma coluna para outra. For this reason, it must be set by users when they create a column based on the field type on the New Site Column, Change Site Column, Create Column, and Change Column pages.
Duas maneiras para processamento de propriedades do campo
Windows SharePoint Services 3.0 fornece duas maneiras para você para processar a variável campo propriedades de seu personalizado tipo de campo nestas páginas:
Defina as propriedades do tipo de campo usar CAML Colaboração Application Markup Language (CAML) marcação no Elemento PropertySchema (tipos de campos) de definição de tipo o campo. Windows SharePoint Services then automatically displays the field properties, as defined, in the Additional Column Settings section of the New Site Column, Change Site Column, Create Column, and Change Column pages.
Crie um editor usuário controle (arquivo .ascx) que exibe propriedades de campo e permite configuração as propriedades e valores específicos quando uma coluna baseada no tipo de campo é criado. Windows SharePoint Services então hospeda esse controle nas páginas mencionadas acima.
Este tópico descreve as vantagens e limitações de cada abordagem.
Observação
Com duas exceções, nenhum desses métodos é usado para processar, sobre o New Site Column , alterar site coluna criar colunas e Alterar coluna páginas, a variável Propriedades do campo tipos que enviar com Windows SharePoint Services 3.0.Em vez disso, é difícil processamento-codificado marcação no arquivo de página (such as FldNew.aspx) próprio.(As exceções são tipos de campo de pesquisa e de usuário que ambos usam um controle editor.) Por esse motivo, um personalizado classe campo não pode herdar as informações sobre processamento as propriedades de tipo de campo na classe Windows SharePoint Services 3.0 wssversion3short da qual ela herda (exceto, possivelmente, se ele herda de tipos de campo de pesquisa ou de usuário).For example, if you derive a custom field type from the SPFieldText class, your new custom field type does not inherit the rendering information for the text box (on the New Site Column, Change Site Column, Create Column, and Change Column pages) where the column creators or column editors specify the maximum length of the field.Para processar qualquer das propriedades da classe pai tipo de campo, você deve especificar seus próprios renderings, com um PropertySchema no arquivo de definição campo ou usando um controle usuário editor campo.(However, you might be able to inherit field property rendering if your custom field class inherits from either the Lookup or User classes.Veja abaixo.)
Processamento propriedades do campo usando o elemento PropertySchema
Quando você cria seu definição de tipo campo em um fldtypes*.xml arquivo, você pode definir cada propriedade tipo de campo como um elemento e63ac515-9eb9-4fa4-bc34-2db37d4dec76 campo dentro de elemento 5723244b-2041-4424-97e5-8dbd828ecdf7 PropertySchema. Se você definir as propriedades tipo de campo no elemento PropertySchema PropertySchema, wssnoversshort Windows SharePoint Services renders automaticamente essas propriedades com base na esquema.
O elemento PropertySchema PropertySchema contém um elemento 55ae7cb3-0205-4a37-8592-31135b94b6ba campos, que contém um elemento Field do campo para cada propriedade tipo de campo in TURN que você desejar definir. Você pode usar padrão Colaboração Application Markup Language (CAML) dentro cada elemento Field do campo. Para obter mais informações sobre personalizado campo tipos, consulte Definição Tipo de campo personalizado.
Porque Windows SharePoint Services automaticamente trata o processamento das propriedades tipo de campo, essa abordagem limita você para o processamento opções disponível ao usar CAML. Não é possível especificar personalizado manipulação processamento ou validação de suas propriedades tipo de campo. Por esse motivo, essa abordagem funciona melhor com propriedades tipo de campo simples que não exigem processamento ou validação lógica complexa.
Observação
É importante lembrar que nós não estiver falando sobre validação de valores específicos que os usuários finais dará para o campo em uma determinada item da lista em uma lista específica.Em vez disso, nós estiver falando sobre propriedades dacampo (that is, coluna) set on the New Site Column, Change Site Column, Create Column, and Change Column pages.Ele é muito raro que os valores que um criador coluna ou coluna editor pode usar para definir uma propriedade campo precisaria validação.
Processamento propriedades do campo usando um controle de usuário do editor do campo
Você também pode processar as propriedades tipo de campo, criando uma página .ascx para trabalhar como um campo editor controle de usuário. Essa abordagem, que está mais envolvida, permite que você escreva personalizado lógica processamento de dados na code-behind page do controle ascx. Essa abordagem é recomendada caso você precise executar personalizado funções, such as computacional complicado lógica, pesquisa de valores de dados fontes e personalizado validação de dados.
Você especificar o controle a ser usada como um controle editor campo usando "FieldEditorUserControl" como o valor do atributo Name Nome de um Elemento de campo (tipos de campos) na definição de tipo campo arquivo XML b3315997-671f-4c29-9518-48cc4592f205. Por exemplo:
<Field name="FieldEditorUserControl">
/_controltemplates/LookupFieldEditor.ascx
</Field>
Você pode especificar apenas um campo editor controle para um particularspecific tipo de campo classe. Se você herdar de uma classe tipo de campo que possui um controle de usuário editor campo já especificado (such as os tipos), consulta ou de usuário campo e você especificar outro controle editor campo no seu definição de tipo campo e, em seguida, você não herdam o controle usuário editor campo do as well a classe pai. To inherit the parent field type's field editor control, you must either not include the <Field name="FieldEditorUserControl"> element in your field type definition, or you must specify the very same control as the parent field type's definition specifies.
Observação
A classe controle editor campo não pode herdar de tanto o LookupFieldEditor a UserFieldEditor controle classes, quais são os controles editor campo apenas dois que enviar com Windows SharePoint Services 3.0.Eles não são acessível a partir seu codificar.
Consulte também
Conceitos
Tipos de campo personalizado
Classes do campo personalizado
Definição Tipo de campo personalizado
Controles Editor para campos Tipo propriedades