次の方法で共有


方法: Windows フォームの MonthCalendar コントロールの外観を変更する

Windows フォーム MonthCalendar コントロールを使用すると、さまざまな方法で予定表の外観をカスタマイズできます。 たとえば、配色を設定し、週番号と現在の日付を表示または非表示にすることができます。

月カレンダーの配色を変更するには

  • TitleBackColorTitleForeColorTrailingForeColorなどのプロパティを設定します。 TitleBackColor プロパティは、曜日のフォントの色も決定します。 TrailingForeColor プロパティは、表示される月または月の前と後の日付の色を決定します。

    MonthCalendar1.TitleBackColor = System.Drawing.Color.Blue  
    MonthCalendar1.TrailingForeColor = System.Drawing.Color.Red  
    MonthCalendar1.TitleForeColor = System.Drawing.Color.Yellow  
    
    monthCalendar1.TitleBackColor = System.Drawing.Color.Blue;  
    monthCalendar1.TrailingForeColor = System.Drawing.Color.Red;  
    monthCalendar1.TitleForeColor = System.Drawing.Color.Yellow;  
    
    monthCalendar1->TitleBackColor = System::Drawing::Color::Blue;  
    monthCalendar1->TrailingForeColor = System::Drawing::Color::Red;  
    monthCalendar1->TitleForeColor = System::Drawing::Color::Yellow;  
    

    手記

    Windows Vista 以降では、テーマによっては、一部のプロパティを設定しても予定表の外観が変更されないことがあります。 たとえば、Windows が Aero テーマを使用するように設定されている場合、BackColorTitleBackColorTitleForeColor、または TrailingForeColor プロパティを設定しても効果はありません。 これは、カレンダーの更新バージョンが、現在のオペレーティング システム テーマから実行時に派生した外観でレンダリングされるためです。 これらのプロパティを使用して以前のバージョンの予定表を有効にする場合は、アプリケーションのビジュアル スタイルを無効にすることができます。 ビジュアル スタイルを無効にすると、アプリケーション内の他のコントロールの外観と動作に影響する可能性があります。 Visual Basic でビジュアル スタイルを無効にするには、プロジェクト デザイナーを開き、[XP ビジュアル スタイルを有効にする] チェック ボックスをオフにします。 C# でビジュアル スタイルを無効にするには、Program.csを開き、Application.EnableVisualStyles();コメント アウトします。 ビジュアル スタイルの詳細については、「Visual Stylesを有効にする」を参照してください。

コントロールの下部に現在の日付を表示するには

  • ShowToday プロパティを trueに設定します。 次の例では、フォームをダブルクリックすると、今日の日付の表示と省略を切り替えます。

    Private Sub Form1_DoubleClick(ByVal sender As Object, _  
    ByVal e As System.EventArgs) Handles MyBase.DoubleClick  
       ' Toggle between True and False.  
       MonthCalendar1.ShowToday = Not MonthCalendar1.ShowToday  
    End Sub  
    
    private void Form1_DoubleClick(object sender, System.EventArgs e)  
    {  
       // Toggle between True and False.  
       monthCalendar1.ShowToday = !monthCalendar1.ShowToday;  
    }  
    
    private:  
       System::Void Form1_DoubleClick(System::Object ^  sender,  
          System::EventArgs ^  e)  
       {  
          // Toggle between True and False.  
          monthCalendar1->ShowToday = !monthCalendar1->ShowToday;  
       }  
    

    (Visual C#、Visual C++)フォームのコンストラクターに次のコードを配置して、イベント ハンドラーを登録します。

    this.DoubleClick += new System.EventHandler(this.Form1_DoubleClick);  
    
    this->DoubleClick += gcnew System::EventHandler(this,  
       &Form1::Form1_DoubleClick);  
    

週番号を表示するには

  • ShowWeekNumbers プロパティを trueに設定します。 このプロパティは、コードまたは [プロパティ] ウィンドウで設定できます。

    週番号は、週の最初の日の左側の個別の列に表示されます。

    MonthCalendar1.ShowWeekNumbers = True  
    
    monthCalendar1.ShowWeekNumbers = true;  
    
    monthCalendar1->ShowWeekNumbers = true;  
    

関連項目