0

小さなデモ プログラムが以下に含まれています。問題を再現するには、日付を選択して [BlackoutDate] ボタンをクリックします。私のシステムでは、ArgumentOutOfRange例外が発生します。

これを修正する方法について何か提案はありますか?

XAML:

<Window x:Class="CalendarBlackoutDate.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="350" Width="525">
    <StackPanel>
        <Calendar Name="calendar"/>
        <Button Name="blackoutDateButton" Content="BlackoutDate" Click="blackoutDateButton_Click"/>
    </StackPanel>
</Window>

C#:

using System.Windows;
using System.Windows.Controls;

namespace CalendarBlackoutDate
{
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void blackoutDateButton_Click(object sender, RoutedEventArgs e)
        {
            calendar.BlackoutDates.Add(
                new CalendarDateRange(
                    calendar.SelectedDate.Value));
        }
    }
}
4

1 に答える 1

1

選択した日付がブラックアウトと同じカレンダー?? 選択した日付を除外日にすることはできません。

 calendar1.BlackoutDates.Add(
            new CalendarDateRange(
                calendar2.SelectedDate.Value));

<Calendar Name="calendar1"/>
<Calendar Name="calendar2"/>

カレンダー1枚なら

if (calendar1.SelectedDate == null) return;
DateTime dtBO = (DateTime)calendar1.SelectedDate;
calendar1.SelectedDate = null;
calendar1.BlackoutDates.Add(new CalendarDateRange(dtBO));
于 2012-05-07T20:34:25.390 に答える