Preferred Language:
Listing 7.14 - ShowFeaturedProduct.aspx
Illustrates how to load user controls dynamically.
<%@ Page Language="C#" %>
<%@ Import Namespace="System.IO" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">
const string randomFolder = "FeaturedProducts";
protected void Page_Load(object sender, EventArgs e)
{
string featuredProductPath = GetRandomProductPath();
Control featuredProduct = Page.LoadControl(featuredProductPath);
PlaceHolder1.Controls.Add(featuredProduct);
}
private string GetRandomProductPath()
{
Random rnd = new Random();
string[] files = Directory.GetFiles(MapPath(randomFolder), "*.ascx");
string featuredProductPath = Path.GetFileName(files[rnd.Next(files.Length)]);
return Path.Combine(randomFolder, featuredProductPath);
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>Show Featured Products</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:PlaceHolder
id="PlaceHolder1"
Runat="server" />
</div>
</form>
</body>
</html>
Need ASP.NET and Visual Studio 2008 Training?
- Learn ASP.NET 3.5 from Stephen Walther, author of ASP.NET 3.5 Unleashed.
We've provided ASP.NET training for NASA, Lockheed Martin, the National Science Foundation, Verizon,
Boeing, the US House of Representatives, Kaiser, Petco, Mary Kay, and Microsoft.
Why not your company?
-
Receive a four day, hands-on, intensive workshop.
-
We fly to you, anywhere in the world.
-
We can bring our own laptops.
To learn more, visit the
Superexpert Training website.