ник: FORMAT
Хорошо.
Допустим у тебя есть 25 форм на которых на событии OnLoad нужно выставить длину текстбоксов = 500.
В случае НЕ ИСПОЛЬЗОВАНИЯ классов тебе придется 25 раз на каждой форме прописывать процедуру OnLoad
В случае ИСПОЛЬЗОВАНИЯ КЛАССОВ тебе придется сделать следующее:
(Извини, код на С#, поскольку VB я не очень хорошо изучил, но думаю суть уловишь)
Создаем класс в котором определяем процедуру SetInputControls, задающую длинну для текстбоксов, а также переопределяем метод OnLoad
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using TDL.BST;
namespace TDL.BST.UI
{
public class Class1: System.Web.UI.Page
{
public Class1(){}
protected override void OnLoad(EventArgs e)
{
SetInputControls(this);
base.OnLoad(e);
}
public static void SetInputControls(Control container)
{
foreach (Control ctl in container.Controls)
{
if ( ctl is TextBox )
{
WebControl wctl = ctl as WebControl;
wctl.Width=500;
}
else
{
if (ctl.Controls.Count > 0)
SetInputControls(ctl);
}
}
}
}
}
|
После все формы наследуем от нашего класса
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using TDL.BST;
using TDL.BST.DAL;
namespace TDL.BST.UI
{
public partial class Default2 : TDL.BST.UI.Class1
{
}
}
|
Заметь, что в данном случае процедуру OnLoad нашей формы мы не описываем вааще, но тем не менее, поскольку форма наследует наш созданный класс, то и соответственно наследует все методы этого класса.
Это касается наследования.
По поводу полиморфизма - щас выдерну фрагмент из своего проекта и опишу.