Имеем два класса
public class Source
{
public string Text
{
get
{
...
}
set
{
...
}
}
}
и
public class Dest
{
public Source objSource;
private void ChangeSource()
{
...
}
}
Как сделать, чтобы при изменении Source.Text вызывался бы метод Dest.ChangeSource()? Предполагается, что Source "не знает" о том, где он находится (переменной какого класса является).
Здравствуйте, M_Ocean, Вы писали:
M_O>Имеем два класса
M_O>
public delegate void ChangeSourceHandler();
M_O>public class Source
M_O>{
M_O> public string Text
M_O> {
M_O> get
M_O> {
M_O> ...
M_O> }
M_O> set
M_O> {
...
if( null != ChangeSource )
ChangeSource();
M_O> }
M_O> }
public event ChangeSourceHandler ChangeSource;
M_O>}
M_O>
M_O>и
M_O>M_O>public class Dest
M_O>{
M_O> public Source objSource;
public Dest()
{
objSource = new Source();
objSource.ChangeSource += new ChangeSourceHandler( ChangeSource );
}
M_O> private void ChangeSource()
M_O> {
M_O> ...
M_O> }
M_O>}
M_O>
M_O>Как сделать, чтобы при изменении Source.Text вызывался бы метод Dest.ChangeSource()? Предполагается, что Source "не знает" о том, где он находится (переменной какого класса является).
Вот так
Ed.ward
... << RSDN@Home 1.0 beta 7a >>
Ed.ward, спасибо большое!
Ууууух! Работает. Как все просто оказывается.