Share via


DataGridTableStyle.ColumnHeadersVisibleChanged Olay

Tanım

Değer değiştiğinde ColumnHeadersVisible gerçekleşir.

public:
 event EventHandler ^ ColumnHeadersVisibleChanged;
public event EventHandler ColumnHeadersVisibleChanged;
member this.ColumnHeadersVisibleChanged : EventHandler 
Public Custom Event ColumnHeadersVisibleChanged As EventHandler 

Olay Türü

Örnekler

Aşağıdaki kod örneğinde bu üyenin kullanımı gösterilmektedir.

private:
   void DataGridTableStyle_Sample_Load( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      myDataGridTableStyle1 = gcnew DataGridTableStyle;
      myHeaderLabel->Text = String::Concat( "Header Status : ", myDataGridTableStyle1->ColumnHeadersVisible );
      if ( myDataGridTableStyle1->ColumnHeadersVisible == true )
      {
         btnheader->Text = "Remove Header";
      }
      else
      {
         btnheader->Text = "Add Header";
      }

      AddCustomDataTableStyle();
   }

   void AddCustomDataTableStyle()
   {
      myDataGridTableStyle1->ColumnHeadersVisibleChanged += gcnew System::EventHandler( this, &DataGridTableStyle_Sample::ColumnHeadersVisibleChanged_Handler );

      // Set ColumnheaderVisible property.
      myDataGridTableStyle1->MappingName = "Customers";

      // 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();

      // Create a formatted column using a PropertyDescriptor.
      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 ColumnHeadersVisibleChanged_Handler( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      myHeaderLabel->Text = String::Concat( "Header Status : ", myDataGridTableStyle1->ColumnHeadersVisible );
   }

   void btnheader_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      if ( myDataGridTableStyle1->ColumnHeadersVisible == true )
      {
         myDataGridTableStyle1->ColumnHeadersVisible = false;
         btnheader->Text = "Add Header";
      }
      else
      {
         myDataGridTableStyle1->ColumnHeadersVisible = true;
         btnheader->Text = "Remove Header";
      }
   }

     private void DataGridTableStyle_Sample_Load(object sender,
                                               EventArgs e)
     {
        myDataGridTableStyle1 = new DataGridTableStyle();
        myHeaderLabel.Text = "Header Status :" 
           + myDataGridTableStyle1.ColumnHeadersVisible.ToString();
        if(myDataGridTableStyle1.ColumnHeadersVisible == true)
        {
           btnheader.Text = "Remove Header";
        }
        else
        {
           btnheader.Text = "Add Header";
        }
        AddCustomDataTableStyle();
     } 
     private void AddCustomDataTableStyle()
     {           
        myDataGridTableStyle1.ColumnHeadersVisibleChanged 
           += new System.EventHandler(ColumnHeadersVisibleChanged_Handler);

        // Set ColumnheaderVisible property.         
        myDataGridTableStyle1.MappingName = "Customers";

        // 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();

        // Create a formatted column using a PropertyDescriptor.         
        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 ColumnHeadersVisibleChanged_Handler(object sender,
                                                           EventArgs e)
     {         
        myHeaderLabel.Text = "Header Status :" 
           + myDataGridTableStyle1.ColumnHeadersVisible.ToString();
     }      
     private void btnheader_Click(object sender, EventArgs e)
     {
        if(myDataGridTableStyle1.ColumnHeadersVisible == true)
        {            
           myDataGridTableStyle1.ColumnHeadersVisible = false;
           btnheader.Text = "Add Header";
        }
        else
        {
           myDataGridTableStyle1.ColumnHeadersVisible = true;
           btnheader.Text = "Remove Header";
        }         
    }
Private Sub DataGridTableStyle_Sample_Load(ByVal sender As Object, _
                           ByVal e As EventArgs) Handles MyBase.Load
   myDataGridTableStyle1 = New DataGridTableStyle()
   myHeaderLabel.Text = "Header Status :" + myDataGridTableStyle1.ColumnHeadersVisible.ToString()
   If myDataGridTableStyle1.ColumnHeadersVisible = True Then
      btnheader.Text = "Remove Header"
   Else
      btnheader.Text = "Add Header"
   End If
   AddCustomDataTableStyle()
End Sub

Private Sub AddCustomDataTableStyle()
   AddHandler myDataGridTableStyle1.ColumnHeadersVisibleChanged, AddressOf ColumnHeadersVisibleChanged_Handler

   ' Set ColumnheaderVisible property.
   myDataGridTableStyle1.MappingName = "Customers"

   ' 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()

   ' Create a formatted column using a PropertyDescriptor.
   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

Private Sub ColumnHeadersVisibleChanged_Handler(ByVal sender As Object, ByVal e As EventArgs)
   myHeaderLabel.Text = "Header Status :" + myDataGridTableStyle1.ColumnHeadersVisible.ToString()
End Sub

Private Sub btnheader_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnheader.Click
   If myDataGridTableStyle1.ColumnHeadersVisible = True Then
      myDataGridTableStyle1.ColumnHeadersVisible = False
      btnheader.Text = "Add Header"
   Else
      myDataGridTableStyle1.ColumnHeadersVisible = True
      btnheader.Text = "Remove Header"
   End If
End Sub

Açıklamalar

Kılavuzdaki her sütunun resim yazısı metnini ayarlamak için sınıfının özelliğini DataGridColumnStyle ayarlayınHeaderText.

Olayları işleme hakkında daha fazla bilgi için bkz. Olayları İşleme ve Oluşturma.

Şunlara uygulanır

Ayrıca bkz.