DataGridViewCellFormattingEventArgs.CellStyle プロパティ
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)

Dim instance As DataGridViewCellFormattingEventArgs Dim value As DataGridViewCellStyle value = instance.CellStyle instance.CellStyle = value
public: property DataGridViewCellStyle^ CellStyle { DataGridViewCellStyle^ get (); void set (DataGridViewCellStyle^ value); }
/** @property */ public DataGridViewCellStyle get_CellStyle () /** @property */ public void set_CellStyle (DataGridViewCellStyle value)
public function get CellStyle () : DataGridViewCellStyle public function set CellStyle (value : DataGridViewCellStyle)
書式指定するセルの表示スタイルを表す DataGridViewCellStyle。既定値は、セルの InheritedStyle プロパティの値です。

CellStyle プロパティによって返されるオブジェクトのプロパティを設定すると、セルとその内容の表示方法が変更されます。パフォーマンスの低下を防ぐには、セルに直接アクセスせずに、このプロパティを使用してセル スタイルを変更します。
セル スタイルの詳細については、「Windows フォーム DataGridView コントロールでのセルのスタイル」を参照してください。

次のコード例は、CellStyle プロパティを使用して、"Pink" という文字列を含むセルの背景色を Pink に設定する方法を示します。
Private Sub dataGridView1_CellFormatting(ByVal sender As Object, _ ByVal e As DataGridViewCellFormattingEventArgs) _ Handles dataGridView1.CellFormatting ' If the column is the Artist column, check the ' value. If Me.dataGridView1.Columns(e.ColumnIndex).Name _ = "Artist" Then If e.Value IsNot Nothing Then ' Check for the string "pink" in the cell. Dim stringValue As String = _ CType(e.Value, String) stringValue = stringValue.ToLower() If ((stringValue.IndexOf("pink") > -1)) Then e.CellStyle.BackColor = Color.Pink End If End If ElseIf Me.dataGridView1.Columns(e.ColumnIndex).Name _ = "Release Date" Then ShortFormDateFormat(e) End If End Sub 'Even though the date internaly stores the year as YYYY, using formatting, the 'UI can have the format in YY. Private Shared Sub ShortFormDateFormat(ByVal formatting As DataGridViewCellFormattingEventArgs) If formatting.Value IsNot Nothing Then Try Dim dateString As System.Text.StringBuilder = New System.Text.StringBuilder() Dim theDate As Date = DateTime.Parse(formatting.Value.ToString()) dateString.Append(theDate.Month) dateString.Append("/") dateString.Append(theDate.Day) dateString.Append("/") dateString.Append(theDate.Year.ToString().Substring(2)) formatting.Value = dateString.ToString() formatting.FormattingApplied = True Catch notInDateFormat As FormatException ' Set to false in case there are other handlers interested trying to ' format this DataGridViewCellFormattingEventArgs instance. formatting.FormattingApplied = False End Try End If End Sub
private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e) { // If the column is the Artist column, check the // value. if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Artist") { if (e.Value != null) { // Check for the string "pink" in the cell. string stringValue = (string)e.Value; stringValue = stringValue.ToLower(); if ((stringValue.IndexOf("pink") > -1)) { e.CellStyle.BackColor = Color.Pink; } } } else if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Release Date") { ShortFormDateFormat(e); } } //Even though the date internaly stores the year as YYYY, using formatting, the //UI can have the format in YY. private static void ShortFormDateFormat(DataGridViewCellFormattingEventArgs formatting) { if (formatting.Value != null) { try { System.Text.StringBuilder dateString = new System.Text.StringBuilder(); DateTime theDate = DateTime.Parse(formatting.Value.ToString()); dateString.Append(theDate.Month); dateString.Append("/"); dateString.Append(theDate.Day); dateString.Append("/"); dateString.Append(theDate.Year.ToString().Substring(2)); formatting.Value = dateString.ToString(); formatting.FormattingApplied = true; } catch (FormatException) { // Set to false in case there are other handlers interested trying to // format this DataGridViewCellFormattingEventArgs instance. formatting.FormattingApplied = false; } } }
void dataGridView1_CellFormatting( Object^ /*sender*/, DataGridViewCellFormattingEventArgs^ e ) { // If the column is the Artist column, check the // value. if ( this->dataGridView1->Columns[ e->ColumnIndex ]->Name->Equals( "Artist" ) ) { if ( e->Value != nullptr ) { // Check for the string "pink" in the cell. String^ stringValue = dynamic_cast<String^>(e->Value); stringValue = stringValue->ToLower(); if ( (stringValue->IndexOf( "pink" ) > -1) ) { DataGridViewCellStyle^ pinkStyle = gcnew DataGridViewCellStyle; //Change the style of the cell. pinkStyle->BackColor = Color::Pink; pinkStyle->ForeColor = Color::Black; pinkStyle->Font = gcnew System::Drawing::Font( "Times New Roman",8,FontStyle::Bold ); e->CellStyle = pinkStyle; } } } else if ( this->dataGridView1->Columns[ e->ColumnIndex ]->Name->Equals( "Release Date" ) ) { ShortFormDateFormat( e ); } } //Even though the date internaly stores the year as YYYY, using formatting, the //UI can have the format in YY. void ShortFormDateFormat( DataGridViewCellFormattingEventArgs^ formatting ) { if ( formatting->Value != nullptr ) { try { System::Text::StringBuilder^ dateString = gcnew System::Text::StringBuilder; DateTime theDate = DateTime::Parse( formatting->Value->ToString() ); dateString->Append( theDate.Month ); dateString->Append( "/" ); dateString->Append( theDate.Day ); dateString->Append( "/" ); dateString->Append( theDate.Year.ToString()->Substring( 2 ) ); formatting->Value = dateString->ToString(); formatting->FormattingApplied = true; } catch ( Exception^ /*notInDateFormat*/ ) { // Set to false in case there are other handlers interested trying to // format this DataGridViewCellFormattingEventArgs instance. formatting->FormattingApplied = false; } } }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


- DataGridViewCellFormattingEventArgs.CellStyle プロパティのページへのリンク