מדריך WPF – פקדי תאריכים
הפקד Calendar
הפקד Calendar מייצג פקד שמאפשר למשתמש לבחור תאריך מתוך תצוגה ויזואלית של לוח שנה.
התכונה DisplayMode
התכונה DisplayMode מאפשרת לשלוט בפקד Calendar כדי לגרום לו להציג תצוגה של חודש (Month), שנה (Year) או עשור (Decade).
להלן קוד שמדגים את השימוש בתכונה DisplayMode:
<Window x:Class="ControlsDemo.MainWindow"
>="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="350"
Width="525">
<StackPanel>
<Calendar DisplayMode="Month" />
<Calendar DisplayMode="Year" />
<Calendar DisplayMode="Decade" />
</StackPanel>
</Window>
התכונה SelectionMode
התכונה SelectionMode מגדירה האם ניתן יהיה לבחור תאריך בודד מלוח השנה (SingleDate), טווח יחיד של תאריכים (SingleRange), או מספר טווחים של תאריכים (MultipleRange). קבלת הערכים שנבחרו נעשית ע"י שימוש בתכונה SelectedDate במידה ונבחר תאריך אחד בלבד או בתכונה SelectedDates במידה ומספר טווחים נבחרו.
בדוגמת הבאה אנו רוצים כיצד המשתמש יכול לבחור מספר טווחים של תאריכים באותו פקד Calendar:
<Window x:Class="ControlsDemo.MainWindow"
>="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="350"
Width="525">
<StackPanel>
<Calendar DisplayMode="Month"
SelectionMode="MultipleRange" />
</StackPanel>
</Window>
והתוצאה
הגבלות על פקד Calendar
ניתן להגביל את טווח התאריכים בפקד Calendar ע"י שימוש בתכונות DisplayDateStart לתאריך מינימום ו DisplayDateEnd תאריך מקסימום. בנוסף, ניתן להשתמש בתכונה BlackoutDates כדי למנוע בחירה בתאריכים מסוימים.
לדוגמא, הקוד הבא מגביל את הבחירה לתאריכים 01 בינואר 2011 עד 20 בינואר 2011, ובנוסף חוסם את הבחירה עבור התקופה 15 עד ה 16 בינואר.
<Window x:Class="ControlsDemo.MainWindow"
>="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="350"
Width="525">
<StackPanel>
<Calendar DisplayMode="Month"
DisplayDateStart="01.01.2011"
DisplayDateEnd="01.20.2011">
<Calendar.BlackoutDates>
<CalendarDateRange Start="01.15.2011"
End="01.16.2011" />
</Calendar.BlackoutDates>
</Calendar>
</StackPanel>
</Window>
הפקד DatePicker
הפקד DatePicker מייצג פקד שמאפשר למשתמש לבחור תאריך. הבחירה מתבצעת ע"י לחיצה על כפתור לפתיחת לוח שנה ויזואלי או ע"י כתיבת התאריך באופן מפורש. הרבה מהתכונות שראינו שיש לפקד Calendar קיימות גם כן עבור הפקד DatePicker, מלבד האפשרות לבחור מספר תאריכים בו זמנית.
להלן דוגמת שימוש בפקד DatePicker:
<Window x:Class="ControlsDemo.MainWindow"
>="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
>:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow"
Height="350"
Width="525">
<StackPanel>
<DatePicker DisplayDateStart="01.01.2011"
DisplayDateEnd="01.20.2011">
<DatePicker.BlackoutDates>
<CalendarDateRange Start="01.15.2011"
End="01.16.2011" />
</DatePicker.BlackoutDates>
</DatePicker>
</StackPanel>
</Window>
תגובות בפייסבוק