Eis algumas dicas bem interessantes de um colega (Cleviton Monteiro) sobre ASP.NET e AJAX:
O IE não seta para cinza a cor de um campo que está desabilitado (enable = false). Portanto, para garantir que o usuário não vai ter problemas com usabilidade, devemos utilizar um estilo css para deixar o campo cinza. Isto é feito da seguinte forma:
- Criação de um estilo css no arquivo .css do projeto (ou verificar se já existe um);
- Quando desejar deixar o campo desabilitado, setar a propriedade "CssClass" do TextBox com uma string com o nome do estilo. Por exemplo: textBox1.CssClass = "disabled"; (onde disabled é o nome do estilo css).
Agora sobre AJAX:
- Problemas com componentes validators quando utilizados com ajax
Os componented de validação do ASP.NET 2.0 não funcionam com o AJAX RC. Segundo [1]:
"Microsoft is a bit behind in releasing a patch, via Windows Update, for ASP.NET 2.0. This patch would solve the UpdatePanel/Validator control issues that have cropped up in previous versions of ASP.NET AJAX (b1, b2, RC1)."
Para resolver o problema sem ser pelo windows update, os passos seguines devem ser seguidos:
- Copiar uma Validators.dll contida no bin do arquivo baixado em [3] para o bin do viewer;
- Colocar esse mapeamento no web.config:
<tagMapping>
<add tagType="System.Web.UI.WebControls.CompareValidator" mappedTagType="Sample.Web.UI.Compatibility.CompareValidator, Validators, Version=1.0.0.0"/>
<add tagType="System.Web.UI.WebControls.CustomValidator" mappedTagType="Sample.Web.UI.Compatibility.CustomValidator, Validators, Version=1.0.0.0"/>
<add tagType="System.Web.UI.WebControls.RangeValidator" mappedTagType="Sample.Web.UI.Compatibility.RangeValidator, Validators, Version=1.0.0.0"/>
<add tagType="System.Web.UI.WebControls.RegularExpressionValidator" mappedTagType="Sample.Web.UI.Compatibility.RegularExpressionValidator, Validators, Version=1.0.0.0"/>
<add tagType="System.Web.UI.WebControls.RequiredFieldValidator" mappedTagType="Sample.Web.UI.Compatibility.RequiredFieldValidator, Validators, Version=1.0.0.0"/>
<add tagType="System.Web.UI.WebControls.ValidationSummary" mappedTagType="Sample.Web.UI.Compatibility.ValidationSummary, Validators, Version=1.0.0.0"/>
</tagMapping>
Referencias interessantes sobre AJAX.
[1] http://209.85.165.104/search?q=cache:1IEMd4dhsssJ:devjunky.wordpress.com/2007/01/25/aspnet-ajax-rtm-validator-problems-anyone/+asp.net+ajax+validator&hl=pt-BR&ct=clnk&cd=9&gl=br
[2] http://weblogs.asp.net/scottgu/archive/2007/01/25/links-to-asp-net-ajax-1-0-resources-and-answers-to-some-common-questions.aspx
[3] http://blogs.msdn.com/mattgi/attachment/1516974.ashx
[4] http://blogs.msdn.com/mattgi/archive/2007/01/23/asp-net-ajax-validators.aspx