Материал из .Net Framework эксперт
AJAX and User Controls
File: Control.ascx
<%@ Control Language="C#" ClassName="RandomQuotation" %>
<%@ Import Namespace="System.Collections.Generic" %>
<script runat="server">
void Page_Load()
{
List<string> quotes = new List<string>();
quotes.Add("A");
quotes.Add("B");
quotes.Add("C");
Random rnd = new Random();
lblQuote.Text = quotes[rnd.Next(quotes.Count)];
}
</script>
<asp:ScriptManager ID="sm1" runat="server" />
<asp:Timer ID="Timer1" Interval="5000" runat="server" />
<asp:UpdatePanel ID="up1" runat="server">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Timer1" />
</Triggers>
<ContentTemplate>
<div class="quote">
<asp:Label
id="lblQuote"
Runat="server" />
</div>
</ContentTemplate>
</asp:UpdatePanel>
File: Default.aspx
<%@ Page Language="C#" %>
<%@ Register TagPrefix="user" TagName="RandomQuotation" Src="~/Control.ascx" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<style type="text/css">
.quote
{
width:200px;
padding:20px;
border:Dotted 2px orange;
background-color:#eeeeee;
font:16px Georgia,Serif;
}
</style>
<title>Show Random Quotation</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<%= DateTime.Now %>
<br />
<user:RandomQuotation
id="RandomQuotation1"
Runat="server" />
</div>
</form>
</body>
</html>
File: Web.Config
<?xml version="1.0"?>
<configuration>
<system.web>
<customErrors mode="Off"/>
<compilation debug="true"/>
<pages>
<controls>
<add tagPrefix="asp" namespace="System.Web.UI" assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
</controls>
</pages>
</system.web>
</configuration>