カレンダーコントロールをカスタマイズして、現在の日付からカレンダーを開始したいと考えています。
など。今日は2月29日で、2月9日の最初の日付をカレンダーに表示する必要があります。カレンダーコントロールをカスタマイズする
asp.netカレンダーコントロールで可能ですか?
カレンダーコントロールをカスタマイズして、現在の日付からカレンダーを開始したいと考えています。
など。今日は2月29日で、2月9日の最初の日付をカレンダーに表示する必要があります。カレンダーコントロールをカスタマイズする
asp.netカレンダーコントロールで可能ですか?
SelectedDateプロパティを設定します。
protected void Page_Load(object sender, EventArgs e)
{
MyCal.SelectedDate = DateTime.Now.Date;
}
protected void MyCal_DayRender(object sender, DayRenderEventArgs e)
{
if (e.Day.Date < DateTime.Now.Date)
{
e.Cell.Visible = false;
}
}
protected void MyCal_VisibleMonthChanged(object sender, MonthChangedEventArgs e)
{
if (e.NewDate.Month == DateTime.Now.Date.Month - 1)
{
MyCal.SelectedDate = e.PreviousDate;
MyCal.VisibleDate = e.PreviousDate;
}
}
このようあなたに:
は、このコードを試してみてください
myCal.SelectedDate = New Date(DateTime.Now.Year, DateTime.Now.Month, 1)
補遺:カレンダー名はマイカルであると仮定すると、あなたは、このように最初の月の日付を設定することができます
デフォルトでは、<asp:Calendar />
コントロールに現在の月が表示されます。
これは、必要に応じてVisibleDate
プロパティを使用してオーバーライドできます。
今日の日付から開始する必要があることを明確にしてください。今月の残りの日に何が起こるはずですか?
月の他の日をグレーアウトまたはディセーブルにする場合は、毎日レンダリングされるときに実行されるOnDayRender
イベントにフックして、日付とセルにアクセスできるようにします。
protected void Calendar1_OnDayRender(object sender, DayRenderEventArgs e) {
if(e.Day.Date < DateTime.Now) {
e.Cell.CssClass="disabled";
}
}
その他の知っておくべきプロパティは、SelectedDate
プロパティです。この設定は、その特定の日付をクリックするのと同じです。
はい可視プロパティが利用可能です。しかし、私はカレンダーを現在の日付から開始し、次の月のすべての日付も含めたいと思います。 –
カレンダーグリッドを現在の日付から開始したいと考えています。すべての過去の日付は現在の日付グリッドの月に表示すべきではありませんが、翌月の日付は現在の日付に表示されます。グリッド –
お支払いをお待ちください:ご意見 – AngeloBad
ありがとうございます。 –