Hi Alessandro,
To the first question, here is my answer: you should catch the url coming out of the urlControl and format it before storing it to the database. I resolved this way:
Dim ImageUrl As String = ""
Select Case MyUrlControl.UrlType
Case "F"
Dim ImageFileId As Integer = Integer.Parse(MyUrlControl.Url.Substring(7))
Dim objFileController As New FileController
Dim objImageInfo As DotNetNuke.Services.FileSystem.FileInfo = objFileController.GetFileById(ImageFileId, PortalId)
ImageUrl = PortalSettings.HomeDirectory & objImageInfo.Folder & objImageInfo.FileName
Case "U"
ImageUrl = urlImage.Url
End Select
In addition, check this post:
http://forums.asp.net/p/873170/986848.aspx
Answering the second question, you can manage it in your control.ascx file with:
<dnn:URL ID="MyUrlControl" runat="server" FileFilter=".jpg,.gif"
ShowFiles="true" ShowTrack="false" ShowLog="false" />
Hope it helps,
Dario Rossa.