سلام به دوست عزیزی که این کامپوننت رو ساختن
راستش من چیزه زیادی نمی دونم، ولی تا اونجایی که من می دونم این برنامه رو می بایست دانلود کرده و فقط کامپایل کنید(اجرا نمی شه چون اجرایی نیست)
بعد dll ساخته شده تو فلدر bin و یا release رو بهToolbar برنامه visual stdio.net اضافه کنید
و این به برنامه شما (#C و VB بودن) ربط پیدا نمی کنه
http://persiancontrol.codeplex.com/R...eleaseId=27464
ولی مشکل اصلی اینه که من از یک دگمه برای اینکه بعضی روزها قرمز بشن استفاده کردم
به این شکل
persianMonthCalendar1.MarkDates.Add(persianMonthCa lendar1.Value);
ولی روزهای قرمز شده رو وقتی روشون کلیک می کنم آروم آروم رنگ خودشون رو از دست می دن
اگه می شه تابع Refresh رو overwrite کنید . ممنون
protected override bool ProcessDialogKey(Keys keyData)
{
switch (keyData)
{
case Keys.Left:
{
keepFocus = true;
if (iSelectedCellIndex < 41)
{
this.oldSelectedCell = this.selectedCell;
this.selectedCell = cells[++iSelectedCellIndex];
//iSelectedCellIndex++;
}
this.Value = this.Value.AddDays(1);
}
return true;
case Keys.Right:
{
keepFocus = true;
if (iSelectedCellIndex - 1 >= 0)
{
this.oldSelectedCell = this.selectedCell;
this.selectedCell = cells[--iSelectedCellIndex];
//iSelectedCellIndex--;
}
this.Value = this.Value.AddDays(-1);
}
return true;
case Keys.Up:
{
keepFocus = true;
if (iSelectedCellIndex - 7 >= 0)
{
this.oldSelectedCell = this.selectedCell;
this.selectedCell = cells[iSelectedCellIndex - 7];
iSelectedCellIndex -= 7;
}
this.Value = this.Value.AddDays(-7);
}
break;
case Keys.Down:
{
keepFocus = true;
if (iSelectedCellIndex + 7 < 42)
{
this.oldSelectedCell = this.selectedCell;
this.selectedCell = cells[iSelectedCellIndex + 7];
iSelectedCellIndex += +7;
}
this.Value = this.Value.AddDays(7);
}
break;
case Keys.Enter:
case Keys.Escape:
{
keepFocus = false;
if (PopupClosed != null)
PopupClosed(this, EventArgs.Empty);
}
return true;
case Keys.Tab:
keepFocus = false;
break;
}
return base.ProcessDialogKey(keyData);
}
#endregion
//public override void Refresh()
//{///com/
// var pe = Value;
// this.Value = new FreeControls.PersianDate(1380, 1, 1);
// this.Value = pe;
//}
#endregion