PowerTools PlusPak for Windows Forms 8.0J
DrawMonth イベント
使用例 

オーナードローのGcCalendarのビジュアル月領域が変わるときに発生します。
構文
イベント データ

イベント ハンドラが、このイベントに関連するデータを含む、DrawMonthEventArgs 型の引数を受け取りました。次の DrawMonthEventArgs プロパティには、このイベントの固有の情報が記載されます。

プロパティ解説
BackColor描画される月領域の背景色を取得します。  
Bounds描画される月領域の境界線を表す四角形を取得します。  
ClientBounds描画される月領域のクライアント境界線を表す四角形を取得します。  
ForeColor描画される月領域の前景色を取得します。  
Graphics月に描画するグラフィック表面を取得します。  
IsSelected月が選択されているかどうかを表す値を取得します。  
Month描画される月領域の月を表すSystem.Int32値を取得します。  
Text描画される月領域のテキストを表す文字列を取得します。  
Year描画される月領域の年を表すSystem.Int32値を取得します。  
解説
このイベントはオーナードローのGcCalendarで使用されます。CalendarTypeCalendarType.YearMonthDrawModeCalendarDrawMode.OwnerDrawMonthまたはCalendarDrawMode.OwnerDrawDayAndMonthに設定されている時のみ発生します。このイベントを使用してGcCalendarの月領域の描画に必要なタスクを実装することができます。
使用例

次のサンプルコードは、GcCalendarコントロールにオーナードローの月領域を描画する方法を示します。コードでは、DrawMonthイベントを使用してGcCalendarの各月領域へ描画を行います。サンプルコードは、イベントハンドラのパラメーターとして渡されたDrawMonthEventArgsクラスのプロパティとメソッドを使用して月部分を描画します。この例では、フォームにすでにgcCalendar1という名前のGcCalendarコントロールが追加されていることを前提とします。DrawMonthイベントがサンプルコードで定義されたイベントハンドラに処理されている必要があります。また、gcCalendar1がCalendarType.YearMonth および CalendarDrawMode.OwnerDrawMonth モードで初期化されることを条件とします。

private void gcCalendar1_DrawMonth(object sender, GrapeCity.Win.Calendar.DrawMonthEventArgs e)
{
    // Draw the background of current day view.
    e.DrawBackground();

    // Define the default color of the brush as black.
    Brush myBrush = Brushes.Black;

    if (e.Month == DateTime.Now.Month)
    {
        myBrush = Brushes.Red;
    }

    // Define the format of text being drawn.
    StringFormat format = new StringFormat();
    format.Alignment = StringAlignment.Far;
    format.LineAlignment = StringAlignment.Center;

    // Draw the current day view text based on the current Font and the custom brush settings.
    e.Graphics.DrawString(e.Text, gcCalendar1.Font, myBrush, e.Bounds, format);

    // Draw the focus rectangle around the focus date.
    if (e.Month == gcCalendar1.FocusDate.Month)
    {
        e.DrawFocusRectangle();
    }
}
Private Sub gcCalendar1_DrawMonth(ByVal sender As Object, ByVal e As Global.GrapeCity.Win.Calendar.DrawMonthEventArgs)

    ' Draw the background of current day view.
    e.DrawBackground()

    ' Define the default color of the brush as black.
    Dim myBrush As Brush = Brushes.Black

    If e.Month = DateTime.Now.Month Then
        myBrush = Brushes.Red
    End If

    ' Define the format of text being drawn.
    Dim format As New StringFormat()
    format.Alignment = StringAlignment.Far
    format.LineAlignment = StringAlignment.Center

    ' Draw the current day view text based on the current Font and the custom brush settings.
    e.Graphics.DrawString(e.Text, gcCalendar1.Font, myBrush, e.Bounds, format)

    ' Draw the focus rectangle around the focus date.
    If e.Month = gcCalendar1.FocusDate.Month Then
        e.DrawFocusRectangle()
    End If
End Sub
プラットフォーム

Target Platforms: Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

参照

GcCalendar クラス
GcCalendar メンバ
DrawDay イベント
OnDrawMonth メソッド

Send Feedback