Bonjour,
Moi j'utilise ce petit bout de code (il n'est pas de moi, et comme je n'ai jamais eu de problème avec je n'ai jamais regardé ce qu'il y avait dedant). Il y a juste a ppeler cette methode statique en lui passant le control sur lequel tu veux mettre le focus.
Public Shared Sub SetFocus(ByVal control As System.Web.UI.Control)
Dim sb As System.Text.StringBuilder = New System.Text.StringBuilder
sb.Append("" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "<script language='JavaScript'>" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("<!--" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("function SetFocus()" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("{" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("" & Microsoft.VisualBasic.Chr(9) & "document.")
Dim p As System.Web.UI.Control = control.Parent
While Not (TypeOf p Is System.Web.UI.HtmlControls.HtmlForm)
p = p.Parent
End While
sb.Append(p.ClientID)
sb.Append("['")
sb.Append(control.UniqueID)
sb.Append("'].focus();" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("}" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("window.onload = SetFocus;" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("// -->" & Microsoft.VisualBasic.Chr(13) & "" & Microsoft.VisualBasic.Chr(10) & "")
sb.Append("</script>")
control.Page.RegisterClientScriptBlock("SetFocus", sb.ToString)
End Sub
TiK - MCAD.NET
[ Lien ]
[ Lien ]