DataGridColumnCollection Sınıf

Tanım

Denetimdeki DataGridColumnsütunları temsil eden türetilmiş sütun DataGrid nesneleri koleksiyonu. Bu sınıf devralınamaz.

public ref class DataGridColumnCollection sealed : System::Collections::ICollection, System::Web::UI::IStateManager
public sealed class DataGridColumnCollection : System.Collections.ICollection, System.Web.UI.IStateManager
type DataGridColumnCollection = class
    interface ICollection
    interface IEnumerable
    interface IStateManager
Public NotInheritable Class DataGridColumnCollection
Implements ICollection, IStateManager
Devralma
DataGridColumnCollection
Uygulamalar

Örnekler

Aşağıdaki kod örneği, denetime dinamik olarak sütun DataGrid eklemek için koleksiyonun nasıl kullanılacağını DataGridColumnCollection gösterir. Denetimin Columns özelliğinin DataGrid sınıfının bir örneği DataGridColumnCollection olduğunu unutmayın.


<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
   <script runat="server">

      ICollection CreateDataSource() 
      {
      
         // Create sample data for the DataGrid control.
         DataTable dt = new DataTable();
         DataRow dr;
 
         // Define the columns of the table.
         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
         dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
 
         // Populate the table with sample values.
         for (int i = 0; i < 9; i++) 
         {
            dr = dt.NewRow();
 
            dr[0] = i;
            dr[1] = "Item " + i.ToString();
            dr[2] = 1.23 * (i + 1);
 
            dt.Rows.Add(dr);
         }
 
         DataView dv = new DataView(dt);
         return dv;

      }
 
      void Page_Load(Object sender, EventArgs e) 
      {

         // Create a DataGrid control.
         DataGrid ItemsGrid = new DataGrid();

         // Set the properties of the DataGrid.
         ItemsGrid.ID = "ItemsGrid";
         ItemsGrid.BorderColor = System.Drawing.Color.Black;
         ItemsGrid.CellPadding = 3;
         ItemsGrid.AutoGenerateColumns = false;

         // Set the styles for the DataGrid.
         ItemsGrid.HeaderStyle.BackColor = 
             System.Drawing.Color.FromArgb(0x0000aaaa);

         // Create the columns for the DataGrid control. The DataGrid
         // columns are dynamically generated. Therefore, the columns   
         // must be re-created each time the page is refreshed.
         
         // Create and add the columns to the collection.
         ItemsGrid.Columns.Add(CreateBoundColumn("IntegerValue", "Item"));
         ItemsGrid.Columns.Add(
             CreateBoundColumn("StringValue", "Description"));
         ItemsGrid.Columns.Add(
             CreateBoundColumn("CurrencyValue", "Price", "{0:c}", 
             HorizontalAlign.Right));
         ItemsGrid.Columns.Add(
             CreateLinkColumn("http://www.microsoft.com", "_self", 
             "Microsoft", "Related link"));
        
         // Specify the data source and bind it to the control.
         ItemsGrid.DataSource = CreateDataSource();
         ItemsGrid.DataBind();

         // Add the DataGrid control to the Controls collection of 
         // the PlaceHolder control.
         Place.Controls.Add(ItemsGrid);

      }

      BoundColumn CreateBoundColumn(String DataFieldValue, 
          String HeaderTextValue)
      {

         // This version of the CreateBoundColumn method sets only the
         // DataField and HeaderText properties.

         // Create a BoundColumn.
         BoundColumn column = new BoundColumn();

         // Set the properties of the BoundColumn.
         column.DataField = DataFieldValue;
         column.HeaderText = HeaderTextValue;

         return column;

      }

      BoundColumn CreateBoundColumn(String DataFieldValue, 
          String HeaderTextValue, String FormatValue, 
          HorizontalAlign AlignValue)
      {

         // This version of CreateBoundColumn method sets the DataField,
         // HeaderText, and DataFormatString properties. It also sets the 
         // HorizontalAlign property of the ItemStyle property of the column. 

         // Create a BoundColumn using the overloaded CreateBoundColumn method.
         BoundColumn column = CreateBoundColumn(DataFieldValue, HeaderTextValue);

         // Set the properties of the BoundColumn.
         column.DataFormatString = FormatValue;
         column.ItemStyle.HorizontalAlign = AlignValue;

         return column;

      }

      HyperLinkColumn CreateLinkColumn(String NavUrlValue, 
          String TargetValue, String TextValue, String HeaderTextValue)
      {

         // Create a BoundColumn.
         HyperLinkColumn column = new HyperLinkColumn();

         // Set the properties of the ButtonColumn.
         column.NavigateUrl = NavUrlValue;
         column.Target = TargetValue;
         column.Text = TextValue;
         column.HeaderText = HeaderTextValue;

         return column;

      }

   </script>
 
<head runat="server">
    <title>DataGrid Constructor Example</title>
</head>
<body>
 
   <form id="form1" runat="server">
 
      <h3>DataGrid Constructor Example</h3>
 
      <b>Product List</b>

      <asp:PlaceHolder id="Place"
           runat="server"/>
 
   </form>
 
</body>
</html>

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
   <script runat="server">

      Function CreateDataSource() As ICollection 
      
         ' Create sample data for the DataGrid control.
         Dim dt As DataTable = New DataTable()
         Dim dr As DataRow
 
         ' Define the columns of the table.
         dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
         dt.Columns.Add(New DataColumn("StringValue", GetType(string)))
         dt.Columns.Add(New DataColumn("CurrencyValue", GetType(double)))
 
         ' Populate the table with sample values.
         Dim i As Integer

         For i = 0 to 8 
        
            dr = dt.NewRow()
 
            dr(0) = i
            dr(1) = "Item " & i.ToString()
            dr(2) = 1.23 * (i + 1)
 
            dt.Rows.Add(dr)

         Next i
 
         Dim dv As DataView = New DataView(dt)
         Return dv

      End Function
 
      Sub Page_Load(sender As Object, e As EventArgs) 

         ' Create a DataGrid control.
         Dim ItemsGrid As DataGrid = New DataGrid()

         ' Set the properties of the DataGrid.
         ItemsGrid.ID = "ItemsGrid"
         ItemsGrid.BorderColor = System.Drawing.Color.Black
         ItemsGrid.CellPadding = 3
         ItemsGrid.AutoGenerateColumns = False

         ' Set the styles for the DataGrid.
         ItemsGrid.HeaderStyle.BackColor = System.Drawing.Color.FromArgb(&H0000aaaa)

         ' Create the columns for the DataGrid control. The DataGrid
         ' columns are dynamically generated. Therefore, the columns   
         ' must be re-created each time the page is refreshed.
         
         ' Create and add the columns to the collection.
         ItemsGrid.Columns.Add(CreateBoundColumn("IntegerValue", "Item"))
         ItemsGrid.Columns.Add( _
             CreateBoundColumn("StringValue", "Description"))
         ItemsGrid.Columns.Add( _
             CreateBoundColumn("CurrencyValue", "Price", "{0:c}", _
             HorizontalAlign.Right))
         ItemsGrid.Columns.Add( _
             CreateLinkColumn("http:'www.microsoft.com", "_self", _
             "Microsoft", "Related link"))
        
         ' Specify the data source and bind it to the control.     
         ItemsGrid.DataSource = CreateDataSource()
         ItemsGrid.DataBind()

         ' Add the DataGrid control to the Controls collection of 
         ' the PlaceHolder control.
         Place.Controls.Add(ItemsGrid)

      End Sub

      Function CreateBoundColumn(DataFieldValue As String, HeaderTextValue As String) As BoundColumn

         ' This version of CreateBoundColumn method sets only the 
         ' DataField and HeaderText properties.

         ' Create a BoundColumn.
         Dim column As BoundColumn = New BoundColumn()

         ' Set the properties of the BoundColumn.
         column.DataField = DataFieldValue
         column.HeaderText = HeaderTextValue

         Return column

      End Function

      Function CreateBoundColumn(DataFieldValue As String, _
          HeaderTextValue As String, FormatValue As String, _
          AlignValue As HorizontalAlign) As BoundColumn

         ' This version of CreateBoundColumn method sets the DataField,
         ' HeaderText, and DataFormatString properties. It also sets the 
         ' HorizontalAlign property of the ItemStyle property of the column. 

         ' Create a BoundColumn using the overloaded CreateBoundColumn method.
         Dim column As BoundColumn = CreateBoundColumn(DataFieldValue, HeaderTextValue)

         ' Set the properties of the BoundColumn.
         column.DataFormatString = FormatValue
         column.ItemStyle.HorizontalAlign = AlignValue

         Return column

      End Function

      Function CreateLinkColumn(NavUrlValue As String, TargetValue As String, _
         TextValue As String, HeaderTextValue As String) As HyperLinkColumn 

         ' Create a BoundColumn.
         Dim column As HyperLinkColumn = New HyperLinkColumn()

         ' Set the properties of the ButtonColumn.
         column.NavigateUrl = NavUrlValue
         column.Target = TargetValue
         column.Text = TextValue
         column.HeaderText = HeaderTextValue

         Return column

      End Function

   </script>
 
<head runat="server">
    <title>DataGrid Constructor Example</title>
</head>
<body>
 
   <form id="form1" runat="server">
 
      <h3>DataGrid Constructor Example</h3>
 
      <b>Product List</b>

      <asp:PlaceHolder id="Place"
           runat="server"/>
 
   </form>
 
</body>
</html>

Açıklamalar

DataGridColumnCollection Türetilmiş sütun nesnelerinin DataGridColumnkoleksiyonunu program aracılığıyla yönetmek için koleksiyonunu kullanın. Bu nesneler denetimdeki DataGrid sütunları temsil eder. Koleksiyona sütun DataGridColumnCollection ekleyebilir, kaldırabilir veya ekleyebilirsiniz.

Not

AutoGenerateColumns özelliği denetim tarafından DataGrid oluşturulan sütunlara true, ayarlandığında koleksiyona Columns eklenmez.

Denetim, DataGrid koleksiyonunun Columns içeriğini görünüm durumunda depolamaz. Sütunu dinamik olarak eklemek veya kaldırmak için, sayfa her yenilendiğinde sütunu program aracılığıyla eklemeniz veya kaldırmanız gerekir. Denetimin durumu yeniden yüklenmeden ve denetim yeniden oluşturmadan önce DataGrid sütunu ekleyen veya kaldıran bir Page_Init işlev sağlayın. Aksi takdirde, koleksiyondaki Columns değişiklikler görüntülendiğinde denetime DataGrid yansıtılmaz.

Not

Denetim koleksiyonuna DataGrid program aracılığıyla sütun ekleyebilir veya sütunları Columns kaldırabilirsiniz, ancak sütunları statik olarak listelemek ve ardından her sütunu görüntülemek veya gizlemek için özelliğini kullanmak Visible daha kolaydır.

Koleksiyondaki sütunların sırası, sütunların denetimde DataGrid görüntülenme sırasını belirler.

Aşağıdaki tablo, sınıfından türetilen farklı sütun sınıflarını DataGridColumn listeler.

Sütun Sınıfı Description
BoundColumn Veri kaynağındaki bir alana bağlı olan sütun. Alandaki her öğeyi metin olarak görüntüler. Bu, denetimin varsayılan sütun türüdür DataGrid .
ButtonColumn Sütundaki her öğe için bir komut düğmesi görüntüleyen sütun. Bu, Ekle veya Kaldır düğmeleri gibi özel düğme denetimlerinden oluşan bir sütun oluşturmanıza olanak tanır.
EditCommandColumn Sütundaki her öğe için düzenleme komutları içeren bir sütun.
HyperLinkColumn Sütundaki her öğeyi köprü olarak görüntüleyen sütun. Sütunun içeriği bir veri kaynağındaki bir alana veya statik metne bağlanabilir.
TemplateColumn Sütundaki her öğeyi belirtilen şablona göre görüntüleyen sütun. Bu, örneğin görüntüleri görüntülemek için sütunun içeriğini denetlemenize olanak tanır.

Not

DataGridColumn sınıfı, listelenen sütun sınıflarının temel sınıfıdır. Doğrudan koleksiyonda DataGridColumnCollection kullanılmaz.

Oluşturucular

DataGridColumnCollection(DataGrid, ArrayList)

DataGridColumnCollection sınıfının yeni bir örneğini başlatır.

Özellikler

Count

Koleksiyondaki DataGridColumnCollection sütun sayısını alır.

IsReadOnly

Koleksiyondaki DataGridColumnCollection sütunların değiştirilip değiştirilemeyeceğini belirten bir değer alır.

IsSynchronized

Koleksiyona erişimin DataGridColumnCollection eşitlenip eşitlenmediğini belirten bir değer alır (iş parçacığı güvenli).

Item[Int32]

Belirtilen dizindeki DataGridColumnCollection koleksiyondan türetilmiş bir DataGridColumnsütun nesnesi alır.

SyncRoot

Koleksiyona erişimi DataGridColumnCollection eşitlemek için kullanılabilecek nesneyi alır.

Yöntemler

Add(DataGridColumn)

Belirtilen DataGridColumntüretilmiş sütun nesnesini koleksiyonun DataGridColumnCollection sonuna ekler.

AddAt(Int32, DataGridColumn)

Belirtilen dizindeki koleksiyona DataGridColumnCollection türetilmiş bir DataGridColumnsütun nesnesi ekler.

Clear()

Türetilmiş tüm DataGridColumnsütun nesnelerini koleksiyondan DataGridColumnCollection kaldırır.

CopyTo(Array, Int32)

koleksiyondaki DataGridColumnCollection öğeleri içinde belirtilen dizinden Arraybaşlayarak belirtilen Arrayöğesine kopyalar.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetEnumerator()

Koleksiyondaki DataGridColumntüm türetilmiş sütun nesnelerini DataGridColumnCollection içeren bir IEnumerator arabirim döndürür.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
IndexOf(DataGridColumn)

Koleksiyondan belirtilen DataGridColumntüretilmiş sütun nesnesinin dizinini DataGridColumnCollection döndürür.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
Remove(DataGridColumn)

Belirtilen DataGridColumntüretilmiş sütun nesnesini koleksiyondan DataGridColumnCollection kaldırır.

RemoveAt(Int32)

Belirtilen dizindeki koleksiyondan DataGridColumnCollection türetilmiş sütun DataGridColumnnesnesini kaldırır.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IStateManager.IsTrackingViewState

Koleksiyonun görünüm durumu değişikliklerini izleyip izlemediğini belirten bir değer alır.

IStateManager.LoadViewState(Object)

Daha önce kaydedilmiş durumu yükler.

IStateManager.SaveViewState()

Durum değişikliklerini içeren bir nesne döndürür.

IStateManager.TrackViewState()

Durum değişikliklerini izlemeye başlar.

Uzantı Metotları

Cast<TResult>(IEnumerable)

öğesinin IEnumerable öğelerini belirtilen türe atar.

OfType<TResult>(IEnumerable)

Bir öğesinin IEnumerable öğelerini belirtilen türe göre filtreler.

AsParallel(IEnumerable)

Sorgunun paralelleştirilmesini sağlar.

AsQueryable(IEnumerable)

bir IEnumerable öğesini öğesine IQueryabledönüştürür.

Şunlara uygulanır

Ayrıca bkz.