Bagikan melalui


DrawListViewSubItemEventArgs.DrawText Metode

Definisi

Menggambar teks menggunakan ListViewItem.ListViewSubItem warna latar depan saat ini dan pemformatan default.

Overload

DrawText()

Gambar teks menggunakan ListViewItem.ListViewSubItem warna latar depannya saat ini.

DrawText(TextFormatFlags)

Menggambar teks menggunakan ListViewItem.ListViewSubItem warna latar depan saat ini dan memformatnya dengan nilai yang ditentukan TextFormatFlags .

DrawText()

Gambar teks menggunakan ListViewItem.ListViewSubItem warna latar depannya saat ini.

public:
 void DrawText();
public void DrawText ();
member this.DrawText : unit -> unit
Public Sub DrawText ()

Keterangan

Gunakan metode ini untuk menggambar teks subitem menggunakan nilai ListViewItem.ListViewSubItem.ForeColor properti dan ListViewItem.ListViewSubItem.Font saat ini. Teks digambar di dalam area yang ditentukan oleh Bounds properti .

Catatan

UseItemStyleForSubItems Properti induk ListViewItem harus diatur ke false untuk mencegah ListViewItem.ForeColor nilai dan ListViewItem.Font item induk mengesampingkan nilai subitem.

Lihat juga

Berlaku untuk

DrawText(TextFormatFlags)

Menggambar teks menggunakan ListViewItem.ListViewSubItem warna latar depan saat ini dan memformatnya dengan nilai yang ditentukan TextFormatFlags .

public:
 void DrawText(System::Windows::Forms::TextFormatFlags flags);
public void DrawText (System.Windows.Forms.TextFormatFlags flags);
member this.DrawText : System.Windows.Forms.TextFormatFlags -> unit
Public Sub DrawText (flags As TextFormatFlags)

Parameter

flags
TextFormatFlags

Kombinasi TextFormatFlags nilai bitwise.

Contoh

Contoh kode berikut menunjukkan cara menggunakan DrawText metode dalam aplikasi yang menyediakan gambar kustom untuk ListView kontrol. Dalam contoh, handler untuk ListView.DrawSubItem peristiwa menggambar nilai teks subitem dan teks dan latar belakang untuk subitem yang memiliki nilai negatif.

Untuk contoh lengkapnya, lihat DrawListViewSubItemEventArgs topik referensi gambaran umum.

// Draws subitem text and applies content-based formatting.
private void listView1_DrawSubItem(object sender,
    DrawListViewSubItemEventArgs e)
{
    TextFormatFlags flags = TextFormatFlags.Left;

    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;
                flags = TextFormatFlags.HorizontalCenter;
                break;
            case HorizontalAlignment.Right:
                sf.Alignment = StringAlignment.Far;
                flags = TextFormatFlags.Right;
                break;
        }

        // Draw the text and background for a subitem with a 
        // negative value. 
        double subItemValue;
        if (e.ColumnIndex > 0 && Double.TryParse(
            e.SubItem.Text, NumberStyles.Currency,
            NumberFormatInfo.CurrentInfo, out subItemValue) &&
            subItemValue < 0)
        {
            // Unless the item is selected, draw the standard 
            // background to make it stand out from the gradient.
            if ((e.ItemState & ListViewItemStates.Selected) == 0)
            {
                e.DrawBackground();
            }

            // Draw the subitem text in red to highlight it. 
            e.Graphics.DrawString(e.SubItem.Text,
                listView1.Font, Brushes.Red, e.Bounds, sf);

            return;
        }

        // Draw normal text for a subitem with a nonnegative 
        // or nonnumerical value.
        e.DrawText(flags);
    }
}
' Draws subitem text and applies content-based formatting.
Private Sub listView1_DrawSubItem(ByVal sender As Object, _
    ByVal e As DrawListViewSubItemEventArgs) _
    Handles listView1.DrawSubItem

    Dim flags As TextFormatFlags = TextFormatFlags.Left

    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
                flags = TextFormatFlags.HorizontalCenter
            Case HorizontalAlignment.Right
                sf.Alignment = StringAlignment.Far
                flags = TextFormatFlags.Right
        End Select

        ' Draw the text and background for a subitem with a 
        ' negative value. 
        Dim subItemValue As Double
        If e.ColumnIndex > 0 AndAlso _
            Double.TryParse(e.SubItem.Text, NumberStyles.Currency, _
            NumberFormatInfo.CurrentInfo, subItemValue) AndAlso _
            subItemValue < 0 Then

            ' Unless the item is selected, draw the standard 
            ' background to make it stand out from the gradient.
            If (e.ItemState And ListViewItemStates.Selected) = 0 Then
                e.DrawBackground()
            End If

            ' Draw the subitem text in red to highlight it. 
            e.Graphics.DrawString(e.SubItem.Text, _
                Me.listView1.Font, Brushes.Red, e.Bounds, sf)

            Return

        End If

        ' Draw normal text for a subitem with a nonnegative 
        ' or nonnumerical value.
        e.DrawText(flags)

    Finally
        sf.Dispose()
    End Try

End Sub

Keterangan

Gunakan metode ini untuk menggambar teks subitem menggunakan nilai ListViewItem.ListViewSubItem.ForeColor properti dan ListViewItem.ListViewSubItem.Font saat ini. Teks digambar di dalam area yang ditentukan oleh Bounds properti . Nilai TextFormatFlags yang ditentukan dalam flags parameter memungkinkan Anda menyediakan properti pemformatan untuk label simpul, seperti perataan teks.

Catatan

UseItemStyleForSubItems Properti induk ListViewItem harus diatur ke false untuk mencegah ListViewItem.ForeColor nilai dan ListViewItem.Font item induk mengesampingkan nilai subitem.

Lihat juga

Berlaku untuk