Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <ResourceDictionary>
- <Style TargetType="{x:Type Neptune:Calendar}">
- <Setter Property="Template">
- <Setter.Value>
- <ControlTemplate TargetType="{x:Type Neptune:Calendar}">
- <!--Some header items and other misc controls....-->
- <DockPanel>
- <!--Calendar-->
- <ListBox ItemsSource="{Binding Days}" Background="{x:Null}"
- SelectedItem="{Binding SelectedDay, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
- </DockPanel>
- </ControlTemplate>
- </Setter.Value>
- </Setter>
- </Style>
- public class Calendar : Control
- {
- public ObservableCollection<Day> Days { get; set; }
- //SelectedDay Property
- public static readonly DependencyProperty SelectedDayProperty =
- DependencyProperty.Register("SelectedDay", typeof(Day), typeof(Calendar),
- new PropertyMetadata(null, OnSelectedDayChanged));
- public Day SelectedDay
- {
- get { return (Day)GetValue(SelectedDayProperty); }
- set { SetValue(SelectedDayProperty, value); }
- }
- private static void OnSelectedDayChanged(DependencyObject pager, DependencyPropertyChangedEventArgs e)
- {
- Calendar d = pager as Calendar;
- //MessageBox.Shoy.Date.ToShortw(d.SelectedDaDateString());///THIS SHOWS CORRECT SELECTED DATE!!!!
- d.SetValue(ThisDayProperty, d.SelectedDay);
- }
- <Neptune:Calendar Grid.Row="1" x:Name="Calendar" Margin="0,10,0,0"
- ThisDay="{Binding DaySelected, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged,
- RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}">
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement