Ajax - Controles - Tookit

Afinal o que é o AJAX?

O Browser sempre contou com o recurso de fazer a requisição de informações a servidores web, o famoso request. Ai os desenvolvedores do browser pensaram 'porque não disponibilizar esse recurso para ser acessado pelo JavaScript ?', ou seja, depois da página carregada fazer novos 'requests' específicos, disparados por eventos e ocasiões específicas. Foi assim que surgiu o Ajax, disponibilizando um recurso que o browser já possuía para ser acessado quando necessário.

Sendo assim, AJAX é um recurso disponível no browser que permite fazer requisições assíncronas a sites e com isto complementar informações da página conforme vão chegando ou conforme são solicitadas. Assim podemos receber uma página e ao clicar num item o browser pode fazer uma solicitação baseada na escolha do usuário ao servidor web, receber as informações do servidor e atualizar a página web referente a informação retornada.

O AJAX e os Controles AJAX

Com a utilização massiva do Ajax percebeu-se que muitas funcionalidades eram implementadas por muitos analistas de maneiras semelhantes para necessidades semelhantes e alguém teve a brilhante ideia de criar um framework Ajax com essas funcionalidades.

Como tudo feito em JavaScript foi criado um 'framework' para o AJAX visando agregar funcionalidades ao JavaScript de maneira que o desenvolvedor não perca tempo desenvolvendo essas funcionalidades e o usuário do site terá uma experiência de uso de um site web até melhor até que uma aplicação nativa da plataforma.

Controles no AJAX em ASP NET

Muitos fabricantes criaram um 'pacote de funcionalidades' baseadas no AJAX do browser e chamaram esse 'pacote' de 'AJAX Controls Toolkit'. Nesse pacote copiaram algumas funcionalidades do HTML como o fileUpload melhorando ele ou mesmo criaram controles muito interessantes de serem usados, por exemplo, em celulares como o 'Accordion Pane' que divide a tela em 'Panes' ou painéis que o usuário pode escolher exibir ou esconder quando ou tiver interesse no item.

E o melhor é que muitos desses 'pacotes de funcionalidades' além de serem gratuitos são opensource e freeware. Por esse motivo muitos dos 'framewoks' atuais ganham espaço...aumentam a produtividade no desenvolvimento de sites web, e muito.

Importante: Todas as funcionalidades AJAX no ASP NET são controladas pelo ScriptManager.

Não confunda esta biblioteca 'Ajax Control ToolKit' do ASP NET com a funcionalidade AJAX agregada aos browsers.
O 'Ajax Control ToolKit' é um conjunto de itens que os fabricantes desenvolveram para integrar o AJAX com o ASP NET mais facilmente enquanto que o AJAX é um recurso nativo do browser.

Na biblioteca AJAX da Microsoft os controles mais usados desta biblioteca são o UpdateProgressControl, TimerControl.

O que aconteceu com o AJAXTolkit ?

Você sabe que as ferramentas de desenvolvimento web são reformuladas constantemente. Novas ferramentas surgem e outras ficam obsoletas. Foi o que aconteceu com os 'Controles Ajax'. Se você navegar na Internet o pacote mais novo ele foi feito para operar no FrameWork 4 de uns 10 anos atras, portanto, inútil nas apps de hoje. Não se esqueça que até a segurança ( como criptografia ) do pacote é fraca em comparação aos dias de hoje.

Ferramentas como o BootStrap e JQuery substituem estes controles AJAX com vantagem especialmente na sua utilização, bem mais simples, com um código mais compacto, em resumo, só tem vantagens.

Pior ainda é que surgiram algumas ferramentas novas que sepultaram de vez os 'controles ajax' como Angular substituem 100% esses controles com vantagens de produtividade inerentes a plataforma. Melhor que isso, Angular substitui, quase 80%, do JQuery também. Sendo assim, ao invés de estudar 'Ajax Controls Toolkit', parta para o Bootsrap com JQuery ou mesmo para o Angular, vai ser melhor para seu futuro profissional.

Lembre-se que, hoje é impossível integrar o tollbox com a ferramenta com a sua ferramenta atual de desenvolvimento, como o Visual Studio Community Edition especialmente porque delegar a funcionalidade dos módulos 'javascript' para eles mesmo, fora do visual studio, sempre é bem melhor que dentro do asp net.

Importante : Chamo a atenção para o fato que usar os 'controles do AJax' no asp net é usar uma ferramenta que já foi abandonada. Sendo assim você vai continuar trabalhando com uma ferramenta desatualizada com chances de alguma mudança no 'mecanismo javascript' do browser ele pare de funcionar. Eu recomendo, de longe, o Bootstrap e o JQuery como substituição desses controles.


E como eu poderia trabalhar com esses 'controles AJAX' atualmente ?

Se você quiser ver como esses controles funcionavam, hoje ( mar/2024 ) ainda temos uma boa referência da devexpress.

Se quiser baixar a ferramenta vá na página de download GitHub.

Se quiser implementar as funcionalidades do toolkit recomendo o site página da DevExpress que apresenta soluções prontas em JavaScript, hmtl para a implementação dos recursos semelhantes as do toolkit mas com componentes modernos, usando angular e outros recursos, se necessário.

Se quiser visualizar como esses controles funcionam vá na página de Exemplos dos controles da DevExpress. Vai ver que os efeitos do 'toolkit' são muito bons.

Lista dos controles AJAX mais comuns

01-Pointer. Esta funcionalidade pode mudar o formato do mouse na tela, como fazemos numa aplicação nativa.

02-Accordion e Accordion Pane. Permite 'enclausurar' o conteúdo em painéis que podem ser comprimidos ou expandidos ( como uma sanfona, daí o nome do controle ) conforme o programador e/ou usuário desejam clicando num ponto do controle.

04-AjaxFileUpload. Essa tag já existe no HTML, mas no AJAX ele foi muito melhorada. Permite :
•1 - Permite a seleção de múltiplos arquivos a serem transferidos.
•2 - Permite o drag-drop dos nomes dos arquivos a serem transferidos.
•3 - Permite criticar os arquivos a serem transferidos quanto a tipo, tamanho entre outros.

05-AlwaysVisibleControlExtender. Faz com que o controle fique sempre visível e estático na página. Este recurso é facilmente implementado pela css, position=fixed.

06-Animation. Permite abrir uma janela, tipo alert do javascript mas de uma maneira estilizada, inicialmente minimizada e aumentando até atingir seu tamanho atual. Pelo que eu saiba dá para fazer esse efeito com o comando transform da css

07-AreaChart

08-AsyncFileUpload

09-BarChart

10-BubbleChart

11-AutoCompleteExtender

12-BallonPopupExtender

13-CalendarExtender

14-CascadingDropDown

15-CollapsoblePanelExtender

16-ColorPickerExtender

17-ComboBox

18-ConfirmButtonExtender

19-DragPanelExtender

20-DropDownExtender

21-DropShadowExtender

22-DynamicPopulateExtender

23-FilteredTextBoxExtender

24-Gravatar

25-HoverMenuExtenver

26-HtmlEditorExtender

27-LineChart

28-ListSearchExtender

29-MaskedEditExtender

30-ModalPopupExtender

31-MultiHandleSliderExtender

32-MutuallyExclusoveCheckBoxExtender

33-NoBot

34-NumericUpDownExtender

35-PagingBulletedExtender

36-PasswordStrenght

37-PieChart

38-PopupControlExtender

39-Rating

40-ReorderList

41-ResizableControlExtender

42-Seadragon

43-SliderExtender

44-TabContainer

45-ToobleButtonExtender

46-RoundedCornersExtender

47-SlideShowExtender

48-TextBoxWatermarkExtender

49-Twitter

50-UpdatePanelAnimationExtender

51-ValidatorCalloutExtender

52-TabPanel

53-Twitter