数年前、私は IG WebGrid でまさにこれを行わなければなりませんでした。ただし、WebGrid にはレンダリング ポイントが 1 つしかないという利点がありました。HTML が出力されると、設定は完了です。
WinGrid でこれに対処するために、グリッドとデータソースの両方でさまざまなイベントを試しましたが、すべての段階で悲惨な失敗に遭遇しました。私が仕事をした唯一のイベントは でしPaint
た。これにより、パフォーマンスの問題が発生する可能性があります。
のためPaint
に、これが私が一緒にハッキングしたものです。私はこのコードを誇りに思っているわけではなく、本番環境に置くことはおそらくないでしょうが、とにかくここにあります (C#):
private void UltraGrid1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
foreach (UltraGridRow r in UltraGrid1.Rows)
{
foreach (UltraGridCell c in r.Cells)
{
if (c.Text == "foo")
c.Appearance.BackColor = Color.Green;
}
}
}
およびVB:
Private Sub UltraGrid1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles UltraGrid1.Paint
For Each r As UltraGridRow In UltraGrid1.Rows
For Each c As UltraGridCell In r.Cells
If c.Text = "foo" Then
c.Appearance.BackColor = Color.Green
End If
Next
Next
End Sub