PDA

View Full Version : حرفه ای: سوال در مورد افزودن event به یک کلاس



mc_avr
دوشنبه 19 اردیبهشت 1390, 11:16 صبح
سلام دوستان خوبم
یه سوال دارم، ممنون میشم هرکی میتونه کمکم کنه.
من میخوام یه کامپوننت تو #C بسازم که از serial port به ارث میبره
میخوام علاوه بر event هایی که خود کامپوننت serial port داره یه event خودم اضافه کنم تا در زمان استفاده از این کامپوننت وقتی اتفاق مورد نظر من رخ میده اون event مورد نظر من فراخوانی بشه و مثلا مانند
(event (Data Received کار کنه

morteza271
دوشنبه 19 اردیبهشت 1390, 11:33 صبح
دوست عزيز اين کدي که براتون گذاشتم هم براي تعريف پراپرتي جديد و هم براي تعريف رويداد جديد براي يه کامپوننت هست.
موفق باشيد



namespace MISComponents.Common_Controls
{
public partial class DatePicker : UserControl
{
public DatePicker()
{
InitializeComponent();
}

private Color TextBox_Backcolor = Color.Yellow;
private string Date1 = PersianFunction.TodayDate();

public Color FocusColor
{

get
{
return TextBox_Backcolor;
}

set
{
TextBox_Backcolor = value;
}
}

public string Date
{
get
{
return txtDate.Text;
}

set
{
string oldValue = Date1;
if (value.Length == 10)
{
Date1 = Edit_Date(value);
txtDate.Text = Date1;
}
else
{
Date1 = value;
txtDate.Text = Date1;
}
if (oldValue != Date1)
OnDateChanged(new DateEventArgs(oldValue, Date1));
}
}

public event DateChangedEventHandler DateChanged;

protected void OnDateChanged(DateEventArgs e)
{
if (DateChanged != null)
DateChanged(this, e);
}
}

public delegate void DateChangedEventHandler(object sender, DateEventArgs e);
public class DateEventArgs : EventArgs
{
private string oldDate, newDate;
public DateEventArgs(string oldDate, string newDate)
{
this.oldDate = oldDate;
this.newDate = newDate;
}

public string OldDate
{
get
{
return oldDate;
}
}

public string NewDate
{
get
{
return newDate;
}
}
}
}

mc_avr
دوشنبه 19 اردیبهشت 1390, 13:28 عصر
واقعا ممنون
کمک بزرگی کردی:تشویق: