<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=ASP.Net%2FUser_Control_and_Master_Page%2FControl_Action</id>
		<title>ASP.Net/User Control and Master Page/Control Action - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://nfex.ru/index.php?action=history&amp;feed=atom&amp;title=ASP.Net%2FUser_Control_and_Master_Page%2FControl_Action"/>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.Net/User_Control_and_Master_Page/Control_Action&amp;action=history"/>
		<updated>2026-04-29T22:06:20Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://nfex.ru/index.php?title=ASP.Net/User_Control_and_Master_Page/Control_Action&amp;diff=2437&amp;oldid=prev</id>
		<title> в 15:30, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.Net/User_Control_and_Master_Page/Control_Action&amp;diff=2437&amp;oldid=prev"/>
				<updated>2010-05-26T15:30:47Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 15:30, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://nfex.ru/index.php?title=ASP.Net/User_Control_and_Master_Page/Control_Action&amp;diff=2438&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://nfex.ru/index.php?title=ASP.Net/User_Control_and_Master_Page/Control_Action&amp;diff=2438&amp;oldid=prev"/>
				<updated>2010-05-26T11:53:54Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Clear textbox in a user defined control (VB.net)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ Page Language=VB Debug=true %&amp;gt;&lt;br /&gt;
&amp;lt;%@ Register &lt;br /&gt;
    TagPrefix=&amp;quot;My&amp;quot; &lt;br /&gt;
    TagName=&amp;quot;SimpleControl&amp;quot; &lt;br /&gt;
    Src=&amp;quot;UserControlSub.ascx&amp;quot; &lt;br /&gt;
%&amp;gt;&lt;br /&gt;
&amp;lt;script runat=server&amp;gt;&lt;br /&gt;
Sub Clear_Click(Sender As Object, E As EventArgs)&lt;br /&gt;
    MSC1.ClearText(&amp;quot;All&amp;quot;)&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
&amp;lt;HEAD&amp;gt;&lt;br /&gt;
&amp;lt;TITLE&amp;gt;Implementing a User Control on an ASP.NET Page&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&lt;br /&gt;
&amp;lt;BODY LEFTMARGIN=&amp;quot;40&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;form &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    id=&amp;quot;MyForm&amp;quot;    &lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;My:SimpleControl &lt;br /&gt;
    id=&amp;quot;MSC1&amp;quot; &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;asp:button &lt;br /&gt;
    id=&amp;quot;butOK&amp;quot;&lt;br /&gt;
    text=&amp;quot;  OK  &amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;asp:button &lt;br /&gt;
    id=&amp;quot;butClear&amp;quot;&lt;br /&gt;
    text=&amp;quot;Clear&amp;quot;&lt;br /&gt;
    onclick=&amp;quot;Clear_Click&amp;quot; &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;asp:label&lt;br /&gt;
    id=&amp;quot;lblMessage&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&amp;lt;%--UserControlSub.ascx&lt;br /&gt;
&amp;lt;script language=&amp;quot;VB&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
Public ReadOnly Property UserName() As String&lt;br /&gt;
    Get&lt;br /&gt;
        UserName = txtUserName.Text&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public ReadOnly Property Password() As String&lt;br /&gt;
    Get&lt;br /&gt;
        Password = txtPassword.Text&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public ReadOnly Property Version() As String&lt;br /&gt;
    Get&lt;br /&gt;
        Version = &amp;quot;2.3.145&amp;quot;&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public WriteOnly Property FontName() As String&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Font.Name = value&lt;br /&gt;
        lbl2.Font.Name = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public WriteOnly Property FontBold() As Boolean&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Font.Bold = value&lt;br /&gt;
        lbl2.Font.Bold = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Property UserNameLabel() As String&lt;br /&gt;
    Get&lt;br /&gt;
        UserNameLabel = lbl1.Text&lt;br /&gt;
    End Get&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Text = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Property PasswordLabel() As String&lt;br /&gt;
    Get&lt;br /&gt;
        PasswordLabel = lbl2.Text&lt;br /&gt;
    End Get&lt;br /&gt;
    Set&lt;br /&gt;
        lbl2.Text = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Sub ClearText (TextToClear as String)&lt;br /&gt;
    If TextToClear = &amp;quot;All&amp;quot; Then&lt;br /&gt;
        txtUserName.Text = &amp;quot;&amp;quot;&lt;br /&gt;
        txtPassword.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    ElseIf TextToClear = &amp;quot;UserName&amp;quot; Then        &lt;br /&gt;
        txtUserName.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    ElseIf TextToClear = &amp;quot;Password&amp;quot; Then        &lt;br /&gt;
        txtPassword.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    Else&lt;br /&gt;
        Err.Raise(vbObjectError + 513, &amp;quot;User Control Error!&amp;quot;, _&lt;br /&gt;
            &amp;quot;TextToClear parameter must be set to &amp;quot; _&lt;br /&gt;
            &amp;amp; &amp;quot;All, UserName or Password!&amp;quot;)&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;Table style=&amp;quot;font: 10pt verdana;border-width:1;&lt;br /&gt;
    border-style:solid;border-color:black;&amp;quot; cellspacing=&amp;quot;15&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label&lt;br /&gt;
    id=&amp;quot;lbl1&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    Font-Bold=&amp;quot;True&amp;quot;&lt;br /&gt;
    Text=&amp;quot;User Name: &amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:TextBox &lt;br /&gt;
    id=&amp;quot;txtUserName&amp;quot;&lt;br /&gt;
    runat=server&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label&lt;br /&gt;
    id=&amp;quot;lbl2&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    Font-Bold=&amp;quot;True&amp;quot;&lt;br /&gt;
    Text=&amp;quot;Password: &amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:TextBox &lt;br /&gt;
    id=&amp;quot;txtPassword&amp;quot;&lt;br /&gt;
    runat=server&lt;br /&gt;
    TextMode=&amp;quot;Password&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/Table&amp;gt;&lt;br /&gt;
--%&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==User control with event==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;%@ Page language=&amp;quot;c#&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%@ Register TagPrefix=&amp;quot;uc1&amp;quot; TagName=&amp;quot;Control&amp;quot; Src=&amp;quot;Control.ascx&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;script runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
  void MultipleReached(object sender, EventArgs e) {&lt;br /&gt;
    Message.Text=&amp;quot;Congratulations!&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.0 Transitional//EN&amp;quot; &amp;gt; &lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;body MS_POSITIONING=&amp;quot;FlowLayout&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;Control&amp;quot; method=&amp;quot;post&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;uc1:Control id=&amp;quot;Control1&amp;quot; &lt;br /&gt;
                   runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                   Multiple=&amp;quot;5&amp;quot; &lt;br /&gt;
                   OnMultipleReached=&amp;quot;MultipleReached&amp;quot;&amp;gt;&amp;lt;/uc1:Control&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Label ID=&amp;quot;Message&amp;quot; Runat=&amp;quot;server&amp;quot; EnableViewState=&amp;quot;False&amp;quot; /&amp;gt;&lt;br /&gt;
     &amp;lt;/form&amp;gt;&lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Control.ascx&lt;br /&gt;
&amp;lt;%@ Control Language=&amp;quot;c#&amp;quot; AutoEventWireup=&amp;quot;false&amp;quot; Codebehind=&amp;quot;Control.ascx.cs&amp;quot; Inherits=&amp;quot;Control.Control&amp;quot; TargetSchema=&amp;quot;http://schemas.microsoft.ru/intellisense/ie5&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label id=&amp;quot;OutputLabel&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
File: Control.ascx.cs&lt;br /&gt;
namespace Control&lt;br /&gt;
{&lt;br /&gt;
  using System;&lt;br /&gt;
  using System.Data;&lt;br /&gt;
  using System.Drawing;&lt;br /&gt;
  using System.Web;&lt;br /&gt;
  using System.Web.UI.WebControls;&lt;br /&gt;
  using System.Web.UI.HtmlControls;&lt;br /&gt;
  public abstract class Control : System.Web.UI.UserControl&lt;br /&gt;
  {&lt;br /&gt;
    protected static readonly object EventMultipleReached = new Object();&lt;br /&gt;
    protected System.Web.UI.WebControls.Label OutputLabel;&lt;br /&gt;
    private int multiple = 10;&lt;br /&gt;
    public int Multiple &lt;br /&gt;
    {&lt;br /&gt;
      get &lt;br /&gt;
      {&lt;br /&gt;
        return multiple;&lt;br /&gt;
      }&lt;br /&gt;
      set&lt;br /&gt;
      {&lt;br /&gt;
        multiple = value;&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    private void Page_Load(object sender, System.EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
      if(Application[&amp;quot;count&amp;quot;] == null)&lt;br /&gt;
        Application[&amp;quot;count&amp;quot;] = 0;&lt;br /&gt;
      Application.Lock();&lt;br /&gt;
      Application[&amp;quot;count&amp;quot;] = (int)Application[&amp;quot;count&amp;quot;] + 1;&lt;br /&gt;
      Application.UnLock();&lt;br /&gt;
      if((int)Application[&amp;quot;count&amp;quot;] % Multiple == 0)&lt;br /&gt;
        OnMultipleReached(EventArgs.Empty);&lt;br /&gt;
      OutputLabel.Text = Application[&amp;quot;count&amp;quot;].ToString();&lt;br /&gt;
    }&lt;br /&gt;
    public event EventHandler MultipleReached &lt;br /&gt;
    {&lt;br /&gt;
      add &lt;br /&gt;
      {&lt;br /&gt;
        Events.AddHandler(EventMultipleReached, value);&lt;br /&gt;
      }&lt;br /&gt;
      remove&lt;br /&gt;
      {&lt;br /&gt;
        Events.RemoveHandler(EventMultipleReached, value);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    public virtual void OnMultipleReached(EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
      EventHandler MultipleReachedHandler = (EventHandler)Events[EventMultipleReached];&lt;br /&gt;
      if (MultipleReachedHandler != null)&lt;br /&gt;
      {&lt;br /&gt;
        MultipleReachedHandler(this, e);&lt;br /&gt;
      }&lt;br /&gt;
    }&lt;br /&gt;
    override protected void OnInit(EventArgs e)&lt;br /&gt;
    {&lt;br /&gt;
      InitializeComponent();&lt;br /&gt;
      base.OnInit(e);&lt;br /&gt;
    }&lt;br /&gt;
    &lt;br /&gt;
    private void InitializeComponent()&lt;br /&gt;
    {&lt;br /&gt;
      this.Load += new System.EventHandler(this.Page_Load);&lt;br /&gt;
    }&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==User Control with Events (VB.net)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;%@ Page Language=VB Debug=true %&amp;gt;&lt;br /&gt;
&amp;lt;%@ Register &lt;br /&gt;
    TagPrefix=&amp;quot;My&amp;quot; &lt;br /&gt;
    TagName=&amp;quot;SimpleControl&amp;quot; &lt;br /&gt;
    Src=&amp;quot;UserControlEvents.ascx&amp;quot; &lt;br /&gt;
%&amp;gt;&lt;br /&gt;
&amp;lt;script runat=server&amp;gt;&lt;br /&gt;
Sub SubmitBtn_Click(Sender As Object, E As EventArgs)&lt;br /&gt;
    If MSC1.ValidateLogin(&amp;quot;Joe&amp;quot;, &amp;quot;nfex&amp;quot;) Then&lt;br /&gt;
        lblMessage.Text = &amp;quot;Entry allowed!&amp;quot;&lt;br /&gt;
    Else&lt;br /&gt;
        lblMessage.Text = &amp;quot;Entry denied!&amp;quot;&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
Sub Clear_Click(Sender As Object, E As EventArgs)&lt;br /&gt;
    MSC1.ClearText(&amp;quot;All&amp;quot;)&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/SCRIPT&amp;gt;&lt;br /&gt;
&amp;lt;HTML&amp;gt;&lt;br /&gt;
&amp;lt;HEAD&amp;gt;&lt;br /&gt;
&amp;lt;TITLE&amp;gt;Implementing a User Control on an ASP.NET Page&amp;lt;/TITLE&amp;gt;&lt;br /&gt;
&amp;lt;/HEAD&amp;gt;&lt;br /&gt;
&amp;lt;BODY LEFTMARGIN=&amp;quot;40&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;form &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    id=&amp;quot;MyForm&amp;quot;    &lt;br /&gt;
&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;My:SimpleControl &lt;br /&gt;
    id=&amp;quot;MSC1&amp;quot; &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;asp:button &lt;br /&gt;
    id=&amp;quot;butOK&amp;quot;&lt;br /&gt;
    text=&amp;quot;  OK  &amp;quot;&lt;br /&gt;
    onclick=&amp;quot;SubmitBtn_Click&amp;quot; &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;asp:button &lt;br /&gt;
    id=&amp;quot;butClear&amp;quot;&lt;br /&gt;
    text=&amp;quot;Clear&amp;quot;&lt;br /&gt;
    onclick=&amp;quot;Clear_Click&amp;quot; &lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;BR&amp;gt;&amp;lt;BR&amp;gt;&lt;br /&gt;
&amp;lt;asp:label&lt;br /&gt;
    id=&amp;quot;lblMessage&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/form&amp;gt;&lt;br /&gt;
&amp;lt;/BODY&amp;gt;&lt;br /&gt;
&amp;lt;/HTML&amp;gt;&lt;br /&gt;
&amp;lt;%--UserControlEvents.ascx&lt;br /&gt;
&amp;lt;script language=&amp;quot;VB&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
Public ReadOnly Property UserName() As String&lt;br /&gt;
    Get&lt;br /&gt;
        UserName = txtUserName.Text&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public ReadOnly Property Password() As String&lt;br /&gt;
    Get&lt;br /&gt;
        Password = txtPassword.Text&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public ReadOnly Property Version() As String&lt;br /&gt;
    Get&lt;br /&gt;
        Version = &amp;quot;2.3.145&amp;quot;&lt;br /&gt;
    End Get&lt;br /&gt;
End Property&lt;br /&gt;
Public WriteOnly Property FontName() As String&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Font.Name = value&lt;br /&gt;
        lbl2.Font.Name = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public WriteOnly Property FontBold() As Boolean&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Font.Bold = value&lt;br /&gt;
        lbl2.Font.Bold = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Property UserNameLabel() As String&lt;br /&gt;
    Get&lt;br /&gt;
        UserNameLabel = lbl1.Text&lt;br /&gt;
    End Get&lt;br /&gt;
    Set&lt;br /&gt;
        lbl1.Text = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Property PasswordLabel() As String&lt;br /&gt;
    Get&lt;br /&gt;
        PasswordLabel = lbl2.Text&lt;br /&gt;
    End Get&lt;br /&gt;
    Set&lt;br /&gt;
        lbl2.Text = value&lt;br /&gt;
    End Set&lt;br /&gt;
End Property&lt;br /&gt;
Public Sub ClearText (TextToClear as String)&lt;br /&gt;
    If TextToClear = &amp;quot;All&amp;quot; Then&lt;br /&gt;
        txtUserName.Text = &amp;quot;&amp;quot;&lt;br /&gt;
        txtPassword.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    ElseIf TextToClear = &amp;quot;UserName&amp;quot; Then        &lt;br /&gt;
        txtUserName.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    ElseIf TextToClear = &amp;quot;Password&amp;quot; Then        &lt;br /&gt;
        txtPassword.Text = &amp;quot;&amp;quot;&lt;br /&gt;
    Else&lt;br /&gt;
        Err.Raise(vbObjectError + 513, &amp;quot;User Control Error!&amp;quot;, _&lt;br /&gt;
            &amp;quot;TextToClear parameter must be set to &amp;quot; _&lt;br /&gt;
            &amp;amp; &amp;quot;All, UserName or Password!&amp;quot;)&lt;br /&gt;
    End If&lt;br /&gt;
End Sub&lt;br /&gt;
Public Function ValidateLogin (TestUserName as String, _&lt;br /&gt;
    TestPassword as String) as Boolean&lt;br /&gt;
   If txtUserName.Text = TestUserName and _&lt;br /&gt;
       txtPassword.Text = TestPassword Then&lt;br /&gt;
       ValidateLogin = True&lt;br /&gt;
   Else&lt;br /&gt;
       ValidateLogin = False&lt;br /&gt;
   End If&lt;br /&gt;
End Function&lt;br /&gt;
Sub UserName_Changed(Sender As Object, E As EventArgs)&lt;br /&gt;
    txtUserName.Text = UCase(txtUserName.Text)&lt;br /&gt;
End Sub&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;Table style=&amp;quot;font: 10pt verdana;border-width:1;&lt;br /&gt;
    border-style:solid;border-color:black;&amp;quot; cellspacing=&amp;quot;15&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label&lt;br /&gt;
    id=&amp;quot;lbl1&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    Font-Bold=&amp;quot;True&amp;quot;&lt;br /&gt;
    Text=&amp;quot;User Name: &amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:TextBox &lt;br /&gt;
    id=&amp;quot;txtUserName&amp;quot;&lt;br /&gt;
    runat=server&lt;br /&gt;
    autopostback=&amp;quot;True&amp;quot;&lt;br /&gt;
    ontextchanged=&amp;quot;UserName_Changed&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;TR&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label&lt;br /&gt;
    id=&amp;quot;lbl2&amp;quot;&lt;br /&gt;
    runat=&amp;quot;server&amp;quot;&lt;br /&gt;
    Font-Bold=&amp;quot;True&amp;quot;&lt;br /&gt;
    Text=&amp;quot;Password: &amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;TD&amp;gt;&lt;br /&gt;
&amp;lt;asp:TextBox &lt;br /&gt;
    id=&amp;quot;txtPassword&amp;quot;&lt;br /&gt;
    runat=server&lt;br /&gt;
    TextMode=&amp;quot;Password&amp;quot;&lt;br /&gt;
/&amp;gt;&lt;br /&gt;
&amp;lt;/TD&amp;gt;&lt;br /&gt;
&amp;lt;/TR&amp;gt;&lt;br /&gt;
&amp;lt;/Table&amp;gt;&lt;br /&gt;
--%&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
       &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==User control with event (VB)==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;csharp&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;%@ Page language=&amp;quot;vb&amp;quot; AutoEventWireUp=&amp;quot;false&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;%@ Register TagPrefix=&amp;quot;uc1&amp;quot; TagName=&amp;quot;Control&amp;quot; Src=&amp;quot;Control.ascx&amp;quot;%&amp;gt;&lt;br /&gt;
&amp;lt;script runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
  Sub MultipleReached(ByVal sender As Object, ByVal e As EventArgs)&lt;br /&gt;
    Message.Text=&amp;quot;Congratulations!  You were the 5th visitor!&amp;quot;&lt;br /&gt;
  End Sub&lt;br /&gt;
&amp;lt;/script&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE HTML PUBLIC &amp;quot;-//W3C//DTD HTML 4.0 Transitional//EN&amp;quot; &amp;gt;&lt;br /&gt;
&amp;lt;html&amp;gt;&lt;br /&gt;
  &amp;lt;body MS_POSITIONING=&amp;quot;FlowLayout&amp;quot;&amp;gt;&lt;br /&gt;
    &amp;lt;form id=&amp;quot;Control&amp;quot; method=&amp;quot;post&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&lt;br /&gt;
      &amp;lt;uc1:Control id=&amp;quot;Control1&amp;quot; &lt;br /&gt;
                   runat=&amp;quot;server&amp;quot; &lt;br /&gt;
                   Multiple=&amp;quot;5&amp;quot; &lt;br /&gt;
                   OnMultipleReached=&amp;quot;MultipleReached&amp;quot;&amp;gt;&amp;lt;/uc1:Control&amp;gt;&lt;br /&gt;
      &amp;lt;asp:Label ID=&amp;quot;Message&amp;quot; Runat=&amp;quot;server&amp;quot; EnableViewState=&amp;quot;False&amp;quot; /&amp;gt;&lt;br /&gt;
    &amp;lt;/form&amp;gt;&lt;br /&gt;
  &amp;lt;/body&amp;gt;&lt;br /&gt;
&amp;lt;/html&amp;gt;&lt;br /&gt;
File: Control.ascx&lt;br /&gt;
&amp;lt;%@ Control Language=&amp;quot;vb&amp;quot; Src=&amp;quot;Control.ascx.vb&amp;quot; Inherits=&amp;quot;Control.Control&amp;quot; AutoEventWireup=&amp;quot;false&amp;quot; %&amp;gt;&lt;br /&gt;
&amp;lt;asp:Label id=&amp;quot;OutputLabel&amp;quot; runat=&amp;quot;server&amp;quot;&amp;gt;&amp;lt;/asp:Label&amp;gt;&lt;br /&gt;
File: Control.ascx.vb&lt;br /&gt;
Namespace Control&lt;br /&gt;
    Public MustInherit Class Control&lt;br /&gt;
        Inherits System.Web.UI.UserControl&lt;br /&gt;
        Protected WithEvents OutputLabel As System.Web.UI.WebControls.Label&lt;br /&gt;
        Private _multiple As Integer = 10&lt;br /&gt;
        Public Property Multiple() As Integer&lt;br /&gt;
            Get&lt;br /&gt;
                Return _multiple&lt;br /&gt;
            End Get&lt;br /&gt;
            Set(ByVal Value As Integer)&lt;br /&gt;
                _multiple = Value&lt;br /&gt;
            End Set&lt;br /&gt;
        End Property&lt;br /&gt;
        Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init&lt;br /&gt;
            InitializeComponent()&lt;br /&gt;
        End Sub&lt;br /&gt;
        Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load&lt;br /&gt;
            If Application(&amp;quot;count&amp;quot;) Is Nothing Then&lt;br /&gt;
                Application(&amp;quot;count&amp;quot;) = 0&lt;br /&gt;
            End If&lt;br /&gt;
            Application.Lock()&lt;br /&gt;
            Application(&amp;quot;count&amp;quot;) = Application(&amp;quot;count&amp;quot;) + 1&lt;br /&gt;
            Application.UnLock()&lt;br /&gt;
            If Application(&amp;quot;count&amp;quot;) Mod Multiple = 0 Then&lt;br /&gt;
                OnMultipleReached(System.EventArgs.Empty)&lt;br /&gt;
            End If&lt;br /&gt;
            OutputLabel.Text = Application(&amp;quot;count&amp;quot;).ToString()&lt;br /&gt;
        End Sub&lt;br /&gt;
        Public Event MultipleReached(ByVal sender As Object, ByVal e As System.EventArgs)&lt;br /&gt;
        Public Overridable Sub OnMultipleReached(ByVal e As System.EventArgs)&lt;br /&gt;
            RaiseEvent MultipleReached(Me, e)&lt;br /&gt;
        End Sub&lt;br /&gt;
    End Class&lt;br /&gt;
End Namespace&lt;br /&gt;
 &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>