Syntaxe de balise object côté serveur
Déclare et crée des objets COM et .NET Framework dans un page Web Forms.
<object id="id"
runat="server"
latebinding="true|false"
class="Class Name">
<object id="id"
runat="server"
latebinding="true|false"
progid="COM ProgID"/>
<object id="id"
runat="server"
latebinding="true|false"
classid="COM ClassID"/>
Attributs
class
Spécifie la classe .NET Framework à créer.classID
Spécifie le composant COM à créer à l'aide de l'identificateur de classe du composant.id
Nom unique à utiliser lors du référencement de l'objet dans le code suivant.lateBinding
Indique si des API à liaison tardive doivent être utilisées avec les composants COM qui ont été traités par l'importateur de bibliothèques de types (Tlbimp.exe). true indique que des API à liaison tardive doivent être utilisées ; false indique que des API à liaison anticipée doivent être employées. La valeur par défaut est false.progID
Spécifie le composant COM à créer en spécifiant l'identificateur programmatique du composant.runat
Doit avoir la valeur server pour que l'objet s'exécute dans ASP.NET. Si d'autres valeurs sont utilisées, le compilateur de pages part du principe que la balise <object> doit être envoyée au client afin d'être gérée.
Notes
Lorsque l'analyseur de pages ASP.NET rencontre une balise <object> côté serveur dans un fichier .aspx, il génère une propriété en lecture seule sur la page, en utilisant l'attribut id de la balise comme nom de propriété. La propriété en lecture seule est alors configurée pour créer une instance de l'objet à la première utilisation. L'instance résultante n'est pas ajoutée en tant qu'objet dans l'arborescence de contrôles serveur hiérarchique de la page ; au lieu de cela, elle est traitée comme une déclaration de variable d'interface non utilisateur.
Les attributs classid, progid et class s'excluent mutuellement. Vous ne pouvez pas inclure plusieurs de ces attributs dans une même balise <object> côté serveur. En revanche, vous pouvez inclure plusieurs balises <object> côté serveur sur une page Web Forms et utiliser ces attributs dans différentes balises.
Remarque |
---|
Pour des raisons de sécurité, les contrôles managés utilisant la balise <object> et le protocole d'accès aux fichiers dans une page HTML ne sont pas pris en charge.Par conséquent, vous ne pouvez pas référencer directement des fichiers à partir de la balise. |
Exemple
L'exemple suivant utilise une syntaxe d'objets côté serveur pour créer une instance de la classe .NET Framework ArrayList dans une page Web Forms.
<%@Page language="C#" %>
<html>
<object id="items" class="System.Collections.ArrayList" runat="server" />
<script language="C#" runat=server>
void Page_Load(Object sender, EventArgs e) {
items.Add("One");
items.Add("Two");
items.Add("Three");
MyList.DataSource = items;
MyList.DataBind();
}
</script>
<body>
<form id="form1" runat="server">
<asp:datalist id="MyList" runat=server>
<ItemTemplate>
Here is a value: <%# Container.DataItem %>
</ItemTemplate>
</asp:datalist>
</form1>
</body>
</html>
<%@Page language="VB" %>
<html>
<object id="items" class="System.Collections.ArrayList" runat="server" />
<script language="VB" runat=server>
Sub Page_Load(Sender As Object, E As EventArgs)
items.Add("One")
items.Add("Two")
items.Add("Three")
MyList.DataSource = items
MyList.DataBind()
End Sub
</script>
<body>
<form id="form1" runat="server">
<asp:datalist id="MyList" runat=server>
<ItemTemplate>
Here is a value: <%# Container.DataItem %>
</ItemTemplate>
</asp:datalist>
</form1>
</body>
</html>