2011-01-07 3 views
0

Hé les gars,
J'ai créé une classe CustomFileUpload qui est héritée de la classe FileUpload d'origine, je vais être obligé de dire que ce n'est pas vraiment un UserControl c'est une classe simple qui peut être vu ci-dessousAccès à un contrôle utilisateur ASP.Net

using System; 
using System.Web; 

public class CustomFileUpload : System.Web.UI.WebControls.FileUpload 
{ 
    public string Directory { get; set; } 
} 

Je dois savoir comment je peux utiliser le contrôle dans ma page, peut-être quelque chose comme <@Registe ... quand nous créons un usercontrol.

+0

ce n'est pas un contrôle utilisateur –

Répondre

2

Ceci s'appelle un contrôle de serveur personnalisé. Vous pouvez lire un article complet à leur sujet. Vous devez avoir le contrôle serveur dans un assembly distinct de votre projet, puis référencer l'assembly dans votre projet.

La syntaxe que vous souhaitez utiliser pour mettre le contrôle sur la page est:

<%@ Register Assembly="YourAssemblyName" TagPrefix="myControl" Namespace="YourNamespaceName"%> 

Ensuite, vous pouvez faire référence à la commande:

<myControl:CustomFileUpload .... /> 

Un moyen facile de le faire est d'ajouter la contrôle à votre boîte à outils. Ensuite, vous pouvez faire glisser le contrôle de la boîte à outils sur n'importe quelle page. Le registre sera créé automatiquement. Pour ajouter le contrôle à la boîte à outils

  1. Cliquez avec le bouton droit de la souris sur l'onglet de la boîte à outils où le contrôle doit résider, sélectionnez les éléments à sélectionner. (Vous pouvez créer un nouvel onglet ou en utiliser un existant).
  2. Sélectionnez Parcourir
  3. Parcourir et sélectionnez votre montage, cliquez sur Ouvrir
  4. Votre contrôle doit maintenant apparaître dans l'onglet boîte à outils.
1

Vous pouvez faire:

<%@ Register TagPrefix="my" Namespace="My.Namespace" Assembly="MyAssembly" %> 

Vous pouvez aussi le faire au niveau de la configuration:

<system.web> 
    <pages> 
    <controls> 
     <add tagPrefix="my" namespace="My.Namespace" assembly="MyAssembly" /> 
    </controls> 
    </pages> 
</system.web> 

Puis utilisez dans votre page:

<my:CustomFileUpload runat="server" ... /> 
1

Vous devez mettez votre classe dans un Namespace et enregistrez-la comme ceci

<%@ Register tagprefix="tagprefix" Namespace="Your Namespace" Assembly="The Assembly" %> 

Ensuite, vous pouvez utiliser le contrôle comme celui-ci

<tagprefix:CustomFileUpload runat="server" /> 

http://msdn.microsoft.com/en-us/library/c76dd5k1(v=VS.100).aspx

Questions connexes