Ver Mensaje Individual
  #1 (permalink)  
Antiguo 10/11/2008, 12:13
Avatar de Bravenap
Bravenap
 
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 2 meses
Puntos: 4
Registrar control personalizado

Muy buenas.

Estoy teniendo problemas para utilizar un control personalizado que he creado.
En VS 2008 tengo una solución con dos proyectos, la aplicación web y la librería de clases para los controles personalizados.

El código del control es:
Código PHP:
Imports System
Imports System
.Collections.Generic
Imports System
.ComponentModel
Imports System
.Text
Imports System
.Web
Imports System
.Web.UI
Imports System
.Web.UI.WebControls
Imports System
.Security
Imports System
.Security.Permissions


<AssemblyTagPrefix("ControlesPersonalizados""cpers")> 
Namespace ControlesPersonalizados

    
<ParseChildren(True"Titulo"), _
    DefaultProperty
("Titulo"), _
    ToolboxData
("<{0}:CuadroNotas ID=""CuadroNotasID"" Titulo=""Título"" runat=""server""> </{0}:CuadroNotas>")> _
    
Public Class CuadroNotas
        Inherits WebControl

        
Private _titulo As String ""
        
Private _ancho As String "200px"
        
Private _flotar As String "right"

        
<Description("Establece u obtiene el título del cuadro de notas contenido en una equita <h1>"), _
        Category
("Propiedades personalizadas"), _
        DefaultValue
("Notas")> _
        
Public Overridable Property Titulo() As String
            Get
                
Return _titulo
            End Get
            Set
(ByVal value As String)
                
_titulo value
            End Set
        End Property

        
<Description("Establece u obtiene el ancho del control especificado en el atributo como style='width: ancho;'."), _
        Category
("Propiedades personalizadas"), _
        DefaultValue
("200px")> _
        
Public Property Ancho() As String
            Get
                
Return _ancho
            End Get
            Set
(ByVal value As String)
                
_ancho value
            End Set
        End Property

        
<Description("Establece u obtiene la posición flotante del control especificado en el atributo como style='float: flotar;'."), _
        Category
("Propiedades personalizadas"), _
        DefaultValue
("right")> _
        
Public Property Flotar() As String
            Get
                
Return _flotar
            End Get
            Set
(ByVal value As String)
                
_flotar value
            End Set
        End Property

        
Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
            
writer.Write(String.Format("<div class='cuadroNotas' style='float: {0}; width: {0};'>"FlotarAncho))
            
writer.Write(String.Format("<h1>{0}</h1>"Titulo))
            
writer.Write("<div class='contenidoCuadroNotas'>")
            
MyBase.Render(writer)
            
writer.Write("</div>")
            
writer.Write("</div>")
        
End Sub

    End 
Class

End Namespace 
Genero el proyecto de la librería de clases y automáticamente me aparece en la caja de herramientas mi control CuadroNotas.

Lo añado a una página ASPX y esto es lo que obtengo:
Código PHP:
<%@ Register Assembly="ControlesPersonalizados" Namespace="ControlesPersonalizados.ControlesPersonalizados"
    
TagPrefix="cc1" %>
.....
<
cc1:CuadroNotas ID="CuadroNotasID" runat="server" Titulo="Título">
    </
cc1:CuadroNotas
Para empezar, TagPrefix debería aparece como "cpers" y no "cc1" y el error al intentar generar el sitio es: Unknown server tag 'cc1:CuadroNotas'.

¿Qué hago mal, dónde está el fallo?

Gracias y un saludo.
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!