Pt:Controles de Lista
From PRADO Wiki
Controles de Lista
Todos os Controles de lista cobertos nesta seção são herdados direta ou indiretamente do TListControl. Portanto, eles compartilham as mesmas propriedades mais usadas, incluindo:
- Items - lista de itens dentro do controle. Os itens são do tipo TListItem. A lista de itens pode ser populada através do "databinding" ou especificada dentro dos templates assim como segue:
<com:TListBox> <com:TListItem Text="text 1" Value="value 1" /> <com:TListItem Text="text 2" Value="value 2" Selected="true" /> <com:TListItem Text="text 3" Value="value 3" /> </com:TListBox>
- SelectedIndex - o índice, iniciado por zero, do primeiro item selecionado dentro da lista de Itens.
- SelectedIndices - os índices de todos os itens selecionados.
- SelectedItem - O primeiro item selecionado da lista.
- SelectedValue - o valor do primeiro item selecionado da lista.
- AutoPostBack - se mudando a seleção o controle deve disparar um postback.
- CausesValidation - se deve realizar validação quando um postback for disparado pelo controle de lista.
Já que o TListControl é herdado do TDataBoundControl, estes controles de lista também compartilham uma operação comum conhecida como "databinding". Os "Items" podem ser populados por uma base de dados pré-existente especificada pelo "DataSource" ou "DataSourceID". Uma chamada a função "dataBind()" irá provocar a associação dos dados. Para Controles de Lista, os dados podem ser especificados nos dois seguintes formatos:
- Array uni-dimensional ou objetos implementando "ITraversable": os índices do array serão usados como valores do Item na lista, e os valores do array serão usados como texto do Item. Por exemplo
$listbox->DataSource=array( 'key 1'=>'item 1', 'key 2'=>'item 2', 'key 3'=>'item 3'); $listbox->dataBind();
- Tabela de Dados (Array bidimensional): cada linha de dados popula apenas um item da lista. O valor do item da lista é especificado pelo membro da lista com "DataValueField", o texto do item da lista pelo "DataTextField". Por exemplo:
$listbox->DataTextField='name'; $listbox->DataValueField='id'; $listbox->DataSource=array( array('id'=>'001','name'=>'John','age'=>31), array('id'=>'002','name'=>'Mary','age'=>30), array('id'=>'003','name'=>'Cary','age'=>20)); $listbox->dataBind();
TListBox
TListBox exibe um listbox que permite seleção simples ou múltipla. Atribua o valor "Single" para a propriedade "SelectionMode" para fazer um listbox com seleção simples, e "Multiple" para seleção múltippla. O Número de linhas exibidos dentro do listbox é especificado pela propriedade "Rows".
TDropDownList
TDropDownList exibe uma lista de controles checkbox numa página. O Alinhamento do texto ao lado de cada checkbox pode ser especificado pela propriedade "TextAlign". O layout dos checkboxes pode ser controlado pelas seguintes propriedades:
- RepeatLayout - pode ser "Table" ou "Flow". "Table" utiliza células de uma tabela HTML para organizar os checkboxes, enquanto o "Flow" usa tags span para isto. Com o Layout "Table", você pode atribuir "CellPadding" e "CellSpacing".
- RepeatColumns - quantas colunas de checkboxes devem ser exibidas.
- RepeatDirection - como devem ser colocados os checkboxes, verticalmente ou horizontalmente (porque os checkboxes são exibidos como uma matriz)
TRadioButtonList
TRadioButtonList é similar ao TCheckBoxList em muitos aspectos, exceto que cada TRadioButtonList exibe um grupo de radiobuttons. Apenas um dos radiobuttons é selecionado (TCheckBoxList permite seleções múltiplas)
TBulletedList
TBulletedList exibe itens em formato de marcadores numa página. O estilo dos marcadores pode ser especificado através de "BulletStyle". Quando o estilo é "CustomImage", os marcadores são exibidos como imagens, que são especificadas através de "BulletImageURL".
TBulletedList exibe os textos dos itens em três diferentes modos:
- Text - o texto do item é exibido como um texto estático;
- HyperLink - cada item é exibido como um hyperlink e a URL é dada pelo valor do item, e a propriedade Target pode ser usada para especificar a janela de destino no Browser.
- LinkButton - cada item é exibido como um botão com um link que submete a para se o usuário clicar nele, e o evento "OnClick" será executado nesta circunstância.

