DataGridViewRowPrePaintEventArgs.InheritedRowStyle Properti
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mendapatkan gaya sel yang diterapkan ke baris.
public:
property System::Windows::Forms::DataGridViewCellStyle ^ InheritedRowStyle { System::Windows::Forms::DataGridViewCellStyle ^ get(); };
public System.Windows.Forms.DataGridViewCellStyle InheritedRowStyle { get; }
member this.InheritedRowStyle : System.Windows.Forms.DataGridViewCellStyle
Public ReadOnly Property InheritedRowStyle As DataGridViewCellStyle
Nilai Properti
Yang DataGridViewCellStyle berisi gaya sel yang saat ini diterapkan ke baris.
Contoh
Contoh kode berikut menunjukkan cara menggunakan InheritedRowStyle properti untuk melukis latar belakang kustom untuk baris yang dipilih. Variabel, e
, berjenis DataGridViewRowPrePaintEventArgs. Contoh kode ini adalah bagian dari contoh yang lebih besar yang disediakan dalam Cara: Menyesuaikan Tampilan Baris di Formulir Windows DataGridView Control.
// Determine whether the cell should be painted
// with the custom selection background.
if ((e.State & DataGridViewElementStates.Selected) ==
DataGridViewElementStates.Selected)
{
// Calculate the bounds of the row.
Rectangle rowBounds = new Rectangle(
this.dataGridView1.RowHeadersWidth, e.RowBounds.Top,
this.dataGridView1.Columns.GetColumnsWidth(
DataGridViewElementStates.Visible) -
this.dataGridView1.HorizontalScrollingOffset + 1,
e.RowBounds.Height);
// Paint the custom selection background.
using (Brush backbrush =
new System.Drawing.Drawing2D.LinearGradientBrush(rowBounds,
this.dataGridView1.DefaultCellStyle.SelectionBackColor,
e.InheritedRowStyle.ForeColor,
System.Drawing.Drawing2D.LinearGradientMode.Horizontal))
{
e.Graphics.FillRectangle(backbrush, rowBounds);
}
}
' Determine whether the cell should be painted with the
' custom selection background.
If (e.State And DataGridViewElementStates.Selected) = _
DataGridViewElementStates.Selected Then
' Calculate the bounds of the row.
Dim rowBounds As New Rectangle( _
Me.dataGridView1.RowHeadersWidth, e.RowBounds.Top, _
Me.dataGridView1.Columns.GetColumnsWidth( _
DataGridViewElementStates.Visible) - _
Me.dataGridView1.HorizontalScrollingOffset + 1, _
e.RowBounds.Height)
' Paint the custom selection background.
Dim backbrush As New _
System.Drawing.Drawing2D.LinearGradientBrush(rowBounds, _
Me.dataGridView1.DefaultCellStyle.SelectionBackColor, _
e.InheritedRowStyle.ForeColor, _
System.Drawing.Drawing2D.LinearGradientMode.Horizontal)
Try
e.Graphics.FillRectangle(backbrush, rowBounds)
Finally
backbrush.Dispose()
End Try
End If
Keterangan
Properti InheritedRowStyle berisi nilai yang sama dengan properti baris InheritedStyle . Mengakses secara langsung DataGridViewRow di DataGridView dapat memengaruhi performa. Gunakan InheritedRowStyle dalam RowPrePaint peristiwa untuk menghindari pembukaan baris dan mempertahankan performa optimal.
Properti InheritedRowStyle bersifat baca-saja. Meskipun Anda dapat mengatur properti yang DataGridViewCellStyle diambil melalui InheritedRowStyle properti , pengaturan baru tidak akan berpengaruh.