次の方法で共有


ListView.DrawColumnHeader イベント

定義

ListView の詳細ビューが描画され、OwnerDraw プロパティが true に設定されている場合に発生します。

public:
 event System::Windows::Forms::DrawListViewColumnHeaderEventHandler ^ DrawColumnHeader;
public event System.Windows.Forms.DrawListViewColumnHeaderEventHandler DrawColumnHeader;
public event System.Windows.Forms.DrawListViewColumnHeaderEventHandler? DrawColumnHeader;
member this.DrawColumnHeader : System.Windows.Forms.DrawListViewColumnHeaderEventHandler 
Public Custom Event DrawColumnHeader As DrawListViewColumnHeaderEventHandler 

イベントの種類

次のコード例では、イベント ハンドラーの実装を DrawColumnHeader 示します。 イベント ハンドラーの実装 DrawSubItem を含む完全な例については、リファレンス トピックを OwnerDraw 参照してください。

// Draws column headers.
private void listView1_DrawColumnHeader(object sender,
    DrawListViewColumnHeaderEventArgs e)
{
    using (StringFormat sf = new StringFormat())
    {
        // Store the column text alignment, letting it default
        // to Left if it has not been set to Center or Right.
        switch (e.Header.TextAlign)
        {
            case HorizontalAlignment.Center:
                sf.Alignment = StringAlignment.Center;
                break;
            case HorizontalAlignment.Right:
                sf.Alignment = StringAlignment.Far;
                break;
        }

        // Draw the standard header background.
        e.DrawBackground();

        // Draw the header text.
        using (Font headerFont =
                    new Font("Helvetica", 10, FontStyle.Bold))
        {
            e.Graphics.DrawString(e.Header.Text, headerFont,
                Brushes.Black, e.Bounds, sf);
        }
    }
    return;
}
' Draws column headers.
Private Sub listView1_DrawColumnHeader(ByVal sender As Object, _
    ByVal e As DrawListViewColumnHeaderEventArgs) _
    Handles listView1.DrawColumnHeader

    Dim sf As New StringFormat()
    Try

        ' Store the column text alignment, letting it default
        ' to Left if it has not been set to Center or Right.
        Select Case e.Header.TextAlign
            Case HorizontalAlignment.Center
                sf.Alignment = StringAlignment.Center
            Case HorizontalAlignment.Right
                sf.Alignment = StringAlignment.Far
        End Select

        ' Draw the standard header background.
        e.DrawBackground()

        ' Draw the header text.
        Dim headerFont As New Font("Helvetica", 10, FontStyle.Bold)
        Try
            e.Graphics.DrawString(e.Header.Text, headerFont, _
                Brushes.Black, e.Bounds, sf)
        Finally
            headerFont.Dispose()
        End Try

    Finally
        sf.Dispose()
    End Try

End Sub

注釈

このイベントを使用すると、所有者描画を使用してコントロールの ListView 外観をカスタマイズできます。 プロパティが に設定され、 OwnerDraw プロパティが にtrue設定されている場合にのみ発生しますView.DetailsView このイベントは、コントロール内の各列ヘッダーに対して発生する可能性があります。 所有者描画の詳細については、プロパティリファレンスのトピックを OwnerDraw 参照してください。

イベントの処理の詳細については、「処理とイベントの発生」を参照してください。

適用対象

こちらもご覧ください