DataGridTableStyle.HeaderFontChanged 事件

HeaderFont 值更改时发生。

**命名空间:**System.Windows.Forms
**程序集:**System.Windows.Forms(在 system.windows.forms.dll 中)

语法

声明
Public Event HeaderFontChanged As EventHandler
用法
Dim instance As DataGridTableStyle
Dim handler As EventHandler

AddHandler instance.HeaderFontChanged, handler
public event EventHandler HeaderFontChanged
public:
event EventHandler^ HeaderFontChanged {
    void add (EventHandler^ value);
    void remove (EventHandler^ value);
}
/** @event */
public void add_HeaderFontChanged (EventHandler value)

/** @event */
public void remove_HeaderFontChanged (EventHandler value)
JScript 支持使用事件,但不支持进行新的声明。

备注

有关处理事件的更多信息,请参见 使用事件

示例

Private Sub AddCustomDataTableStyle()
   myDataGridTableStyle1 = New DataGridTableStyle()
   myDataGridTableStyle2 = New DataGridTableStyle()

   MessageBox.Show("LinkColor Before : " & myDataGridTableStyle1.LinkColor.ToString)
   MessageBox.Show("HeaderFont Before : " & myDataGridTableStyle1.HeaderFont.ToString)

   AddHandler myDataGridTableStyle1.LinkColorChanged, AddressOf LinkColorChanged_Handler
   AddHandler myDataGridTableStyle1.HeaderFontChanged, AddressOf HeaderFontChanged_Handler
   myDataGridTableStyle1.MappingName = "Customers"

   ' Set other properties.
   myDataGridTableStyle1.AlternatingBackColor = Color.LightGray
   myDataGridTableStyle1.LinkColor = Color.Red
   myDataGridTableStyle1.HeaderFont = New System.Drawing.Font _
            ("Verdana", 8.25F, System.Drawing.FontStyle.Bold, _
             System.Drawing.GraphicsUnit.Point, CType(0, System.Byte))

   ' Add a GridColumnStyle and set its MappingName.
   Dim myBoolCol = New DataGridBoolColumn()
   myBoolCol.MappingName = "Current"
   myBoolCol.HeaderText = "IsCurrent Customer"
   myBoolCol.Width = 150
   myDataGridTableStyle1.GridColumnStyles.Add(myBoolCol)

   ' Add a second column style.
   Dim myTextCol = New DataGridTextBoxColumn()
   myTextCol.MappingName = "custName"
   myTextCol.HeaderText = "Customer Name"
   myTextCol.Width = 250
   myDataGridTableStyle1.GridColumnStyles.Add(myTextCol)

   ' Create new ColumnStyle objects
   Dim cOrderDate = New DataGridTextBoxColumn()
   cOrderDate.MappingName = "OrderDate"
   cOrderDate.HeaderText = "Order Date"
   cOrderDate.Width = 100

   ' PropertyDescriptor to create a formatted column.
   Dim myPropertyDescriptorCollection As PropertyDescriptorCollection = _
            Me.BindingContext(myDataSet, "Customers.custToOrders").GetItemProperties()

   Dim csOrderAmount = New DataGridTextBoxColumn(myPropertyDescriptorCollection _
                           ("OrderAmount"), "c", True)
   csOrderAmount.MappingName = "OrderAmount"
   csOrderAmount.HeaderText = "Total"
   csOrderAmount.Width = 100

   ' Add the DataGridTableStyle instances to GridTableStylesCollection.
   myDataGrid.TableStyles.Add(myDataGridTableStyle1)
End Sub 'AddCustomDataTableStyle

Private Sub LinkColorChanged_Handler(ByVal sender As Object, ByVal e As EventArgs)
   MessageBox.Show("LinkColor changed to 'RED'", "DataGridTableStyle")
End Sub 'LinkColorChanged_Handler


Private Sub HeaderFontChanged_Handler(ByVal sender As Object, ByVal e As EventArgs)
   MessageBox.Show("HeaderFont changed to 'VERDANA'", "DataGridTableStyle")
End Sub 'HeaderFontChanged_Handler
private void AddCustomDataTableStyle()
{
   myDataGridTableStyle1 = new DataGridTableStyle();
   myDataGridTableStyle2 = new DataGridTableStyle();

   MessageBox.Show("LinkColor Before : "
      +myDataGridTableStyle1.LinkColor);
   MessageBox.Show("HeaderFont Before : "
      +myDataGridTableStyle1.HeaderFont);
   
   myDataGridTableStyle1.LinkColorChanged +=
      new System.EventHandler(LinkColorChanged_Handler);
   myDataGridTableStyle1.HeaderFontChanged 
      += new System.EventHandler(HeaderFontChanged_Handler);
   myDataGridTableStyle1.MappingName = "Customers";

   // Set other properties.
   myDataGridTableStyle1.AlternatingBackColor = Color.LightGray;
   myDataGridTableStyle1.LinkColor = Color.Red;         
   myDataGridTableStyle1.HeaderFont = 
      new System.Drawing.Font("Verdana",
         8.25F,
         System.Drawing.FontStyle.Bold, 
         System.Drawing.GraphicsUnit.Point,
         ((System.Byte)(0)));

   // Add a GridColumnStyle and set its MappingName.             
   DataGridColumnStyle myBoolCol = new DataGridBoolColumn();
   myBoolCol.MappingName = "Current";
   myBoolCol.HeaderText = "IsCurrent Customer";
   myBoolCol.Width = 150;
   myDataGridTableStyle1.GridColumnStyles.Add(myBoolCol);

   // Add a second column style.
   DataGridColumnStyle myTextCol = new DataGridTextBoxColumn();
   myTextCol.MappingName = "custName";
   myTextCol.HeaderText = "Customer Name";
   myTextCol.Width = 250;
   myDataGridTableStyle1.GridColumnStyles.Add(myTextCol);

   // Create new ColumnStyle objects
   DataGridColumnStyle cOrderDate = new DataGridTextBoxColumn();
   cOrderDate.MappingName = "OrderDate";
   cOrderDate.HeaderText = "Order Date";
   cOrderDate.Width = 100;

   // PropertyDescriptor to create a formatted column.
   PropertyDescriptorCollection myPropertyDescriptorCollection = this.BindingContext
      [myDataSet, "Customers.custToOrders"].GetItemProperties(); 
   
   DataGridColumnStyle csOrderAmount = 
      new DataGridTextBoxColumn(myPropertyDescriptorCollection["OrderAmount"], "c", true);
   csOrderAmount.MappingName = "OrderAmount";
   csOrderAmount.HeaderText = "Total";
   csOrderAmount.Width = 100;
        
   // Add the DataGridTableStyle instances to GridTableStylesCollection.
   myDataGrid.TableStyles.Add(myDataGridTableStyle1);

}
private void LinkColorChanged_Handler(object sender,EventArgs e)
{         
  MessageBox.Show("LinkColor changed to 'RED'", "DataGridTableStyle");
}

private void HeaderFontChanged_Handler(object sender,EventArgs e)
{                  
   MessageBox.Show("HeaderFont changed to 'VERDANA'",
      "DataGridTableStyle");
}
private:
   void AddCustomDataTableStyle()
   {
      myDataGridTableStyle1 = gcnew DataGridTableStyle;
      myDataGridTableStyle2 = gcnew DataGridTableStyle;
      MessageBox::Show( String::Concat( "LinkColor Before : ", myDataGridTableStyle1->LinkColor ) );
      MessageBox::Show( String::Concat( "HeaderFont Before : ", myDataGridTableStyle1->HeaderFont ) );
      myDataGridTableStyle1->LinkColorChanged += gcnew System::EventHandler( this, &DataGridTableStyle_Sample::LinkColorChanged_Handler );
      myDataGridTableStyle1->HeaderFontChanged += gcnew System::EventHandler( this, &DataGridTableStyle_Sample::HeaderFontChanged_Handler );
      myDataGridTableStyle1->MappingName = "Customers";

      // Set other properties.
      myDataGridTableStyle1->AlternatingBackColor = Color::LightGray;
      myDataGridTableStyle1->LinkColor = Color::Red;
      myDataGridTableStyle1->HeaderFont = gcnew System::Drawing::Font( "Verdana",8.25F,System::Drawing::FontStyle::Bold,System::Drawing::GraphicsUnit::Point,((System::Byte)(0)) );

      // Add a GridColumnStyle and set its MappingName.
      DataGridColumnStyle^ myBoolCol = gcnew DataGridBoolColumn;
      myBoolCol->MappingName = "Current";
      myBoolCol->HeaderText = "IsCurrent Customer";
      myBoolCol->Width = 150;
      myDataGridTableStyle1->GridColumnStyles->Add( myBoolCol );

      // Add a second column style.
      DataGridColumnStyle^ myTextCol = gcnew DataGridTextBoxColumn;
      myTextCol->MappingName = "custName";
      myTextCol->HeaderText = "Customer Name";
      myTextCol->Width = 250;
      myDataGridTableStyle1->GridColumnStyles->Add( myTextCol );

      // Create new ColumnStyle objects
      DataGridColumnStyle^ cOrderDate = gcnew DataGridTextBoxColumn;
      cOrderDate->MappingName = "OrderDate";
      cOrderDate->HeaderText = "Order Date";
      cOrderDate->Width = 100;

      // PropertyDescriptor to create a formatted column.
      PropertyDescriptorCollection^ myPropertyDescriptorCollection = this->BindingContext[myDataSet, "Customers.custToOrders"]->GetItemProperties();
      DataGridColumnStyle^ csOrderAmount = gcnew DataGridTextBoxColumn( myPropertyDescriptorCollection[ "OrderAmount" ],"c",true );
      csOrderAmount->MappingName = "OrderAmount";
      csOrderAmount->HeaderText = "Total";
      csOrderAmount->Width = 100;

      // Add the DataGridTableStyle instances to GridTableStylesCollection.
      myDataGrid->TableStyles->Add( myDataGridTableStyle1 );
   }

   void LinkColorChanged_Handler( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      MessageBox::Show( "LinkColor changed to 'RED'", "DataGridTableStyle" );
   }

   void HeaderFontChanged_Handler( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      MessageBox::Show( "HeaderFont changed to 'VERDANA'", "DataGridTableStyle" );
   }
private void AddCustomDataTableStyle()
{
    myDataGridTableStyle1 = new DataGridTableStyle();
    myDataGridTableStyle2 = new DataGridTableStyle();
    MessageBox.Show("LinkColor Before : " 
        + myDataGridTableStyle1.get_LinkColor());
    MessageBox.Show("HeaderFont Before : " 
        + myDataGridTableStyle1.get_HeaderFont());
    myDataGridTableStyle1.add_LinkColorChanged(
        new System.EventHandler(LinkColorChanged_Handler));
    myDataGridTableStyle1.add_HeaderFontChanged(
        new System.EventHandler(HeaderFontChanged_Handler));
    myDataGridTableStyle1.set_MappingName("Customers");

    // Set other properties.
    myDataGridTableStyle1.set_AlternatingBackColor(Color.get_LightGray());
    myDataGridTableStyle1.set_LinkColor(Color.get_Red());
    myDataGridTableStyle1.set_HeaderFont(new System.Drawing.Font("Verdana",
        (float)8.25, System.Drawing.FontStyle.Bold, 
        System.Drawing.GraphicsUnit.Point, (ubyte)0));

    // Add a GridColumnStyle and set its MappingName.             
    DataGridColumnStyle myBoolCol = new DataGridBoolColumn();

    myBoolCol.set_MappingName("Current");
    myBoolCol.set_HeaderText("IsCurrent Customer");
    myBoolCol.set_Width(150);
    myDataGridTableStyle1.get_GridColumnStyles().Add(myBoolCol);

    // Add a second column style.
    DataGridColumnStyle myTextCol = new DataGridTextBoxColumn();

    myTextCol.set_MappingName("custName");
    myTextCol.set_HeaderText("Customer Name");
    myTextCol.set_Width(250);
    myDataGridTableStyle1.get_GridColumnStyles().Add(myTextCol);

    // Create new ColumnStyle objects
    DataGridColumnStyle cOrderDate = new DataGridTextBoxColumn();

    cOrderDate.set_MappingName("OrderDate");
    cOrderDate.set_HeaderText("Order Date");
    cOrderDate.set_Width(100);

    // PropertyDescriptor to create a formatted column.
    PropertyDescriptorCollection myPropertyDescriptorCollection = 
        this.get_BindingContext().get_Item(myDataSet, 
        "Customers.custToOrders").GetItemProperties();
    DataGridColumnStyle csOrderAmount = 
        new DataGridTextBoxColumn(myPropertyDescriptorCollection.
        get_Item("OrderAmount"), "c", true);

    csOrderAmount.set_MappingName("OrderAmount");
    csOrderAmount.set_HeaderText("Total");
    csOrderAmount.set_Width(100);

    // Add the DataGridTableStyle instances to GridTableStylesCollection.
    myDataGrid.get_TableStyles().Add(myDataGridTableStyle1);
} //AddCustomDataTableStyle

private void LinkColorChanged_Handler(Object sender, EventArgs e)
{
    MessageBox.Show("LinkColor changed to 'RED'", "DataGridTableStyle");
} //LinkColorChanged_Handler

private void HeaderFontChanged_Handler(Object sender, EventArgs e)
{
    MessageBox.Show("HeaderFont changed to 'VERDANA'", "DataGridTableStyle");
} //HeaderFontChanged_Handler

平台

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 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求

版本信息

.NET Framework

受以下版本支持:2.0、1.1、1.0

请参见

参考

DataGridTableStyle 类
DataGridTableStyle 成员
System.Windows.Forms 命名空间
DataGridTableStyle.HeaderBackColor 属性
DataGridTableStyle.HeaderForeColor 属性
DataGridTableStyle.ColumnHeadersVisible 属性
DataGridTableStyle.HeaderFont 属性
ResetHeaderFont
DataGridColumnStyle.HeaderText 属性