DataGridItem.ItemType Свойство

Определение

Возвращает тип элемента, представляемого объектом DataGridItem в элементе управления DataGrid.

public:
 virtual property System::Web::UI::WebControls::ListItemType ItemType { System::Web::UI::WebControls::ListItemType get(); };
public virtual System.Web.UI.WebControls.ListItemType ItemType { get; }
member this.ItemType : System.Web.UI.WebControls.ListItemType
Public Overridable ReadOnly Property ItemType As ListItemType

Значение свойства

Одно из значений перечисления ListItemType.

Примеры

В следующем примере кода показано, как использовать ItemType свойство для определения типа элемента в элементе DataGrid управления . Порядок создания элементов в элементе DataGrid управления отображается вместе с типом элемента.

Примечание

В следующем примере кода используется однофайловая модель кода, и при копировании непосредственно в файл кода программной части может работать неправильно. Этот пример кода необходимо скопировать в пустой текстовый файл с расширением ASPX. Дополнительные сведения о модели кода веб-формы см. в разделе Обработка и вызов событий.


<%@ Page Language="C#" AutoEventWireup="True" Debug="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<=10; 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)
      { 
 
         // Load sample data only once, when the page is first loaded.
         if (!IsPostBack)
         { 
         
            ItemsGrid.DataSource = CreateDataSource();
            ItemsGrid.DataBind();
         
         }

      }
 
      void Item_Bound(Object sender, DataGridItemEventArgs e) 
      {
 
         // Use the ItemDataBound event to customize the DataGrid control. 
         // The ItemDataBound event allows you to access the data before 
         // the item is displayed in the control. In this example, the 
         // ItemDataBound event is used to format the items in the 
         // CurrencyColumn in currency format.
         if((e.Item.ItemType == ListItemType.Item) || 
             (e.Item.ItemType == ListItemType.AlternatingItem))
         {
 
            // Retrieve the text of the CurrencyColumn from the DataGridItem
            // and convert the value to a Double.
            Double Price = Convert.ToDouble(e.Item.Cells[2].Text);

            // Format the value as currency and redisplay it in the DataGrid.
            e.Item.Cells[2].Text = Price.ToString("c");
        
         }         
 
      }
 
</script>
 
<head runat="server">
    <title>DataGrid ItemDataBound Example</title>
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>DataGrid ItemDataBound Example</h3>
 
      <asp:DataGrid id="ItemsGrid" runat="server"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           ShowFooter="true"
           OnItemDataBound="Item_Bound">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <FooterStyle BackColor="#00aaaa">
         </FooterStyle>
   
      </asp:DataGrid>

   </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 10 

            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)
 
         ' Load sample data only once, when the page is first loaded.
         If Not IsPostBack Then
         
            ItemsGrid.DataSource = CreateDataSource()
            ItemsGrid.DataBind()
         
         End If

      End Sub
 
      Sub Item_Bound(sender As Object, e As DataGridItemEventArgs) 
 
         ' Use the ItemDataBound event to customize the DataGrid control. 
         ' The ItemDataBound event allows you to access the data before 
         ' the item is displayed in the control. In this example, the 
         ' ItemDataBound event is used to format the items in the 
         ' CurrencyColumn in currency format.
         If e.Item.ItemType = ListItemType.Item Or _
             e.Item.ItemType = ListItemType.AlternatingItem Then
 
            ' Retrieve the text of the CurrencyColumn from the DataGridItem
            ' and convert the value to a Double.
            Dim Price As Double = Convert.ToDouble(e.Item.Cells(2).Text)

            ' Format the value as currency and redisplay it in the DataGrid.
            e.Item.Cells(2).Text = Price.ToString("c")
        
         End If         
 
      End Sub
 
</script>
 
<head runat="server">
    <title>DataGrid ItemDataBound Example</title>
</head>
<body>
 
   <form id="form1" runat="server">

      <h3>DataGrid ItemDataBound Example</h3>
 
      <asp:DataGrid id="ItemsGrid" runat="server"
           BorderColor="black"
           BorderWidth="1"
           CellPadding="3"
           ShowFooter="true"
           OnItemDataBound="Item_Bound">

         <HeaderStyle BackColor="#00aaaa">
         </HeaderStyle>

         <FooterStyle BackColor="#00aaaa">
         </FooterStyle>
   
      </asp:DataGrid>

   </form>
 
</body>
</html>

Комментарии

Используйте свойство , ItemType чтобы определить тип элемента в элементе DataGrid управления . В следующей таблице перечислены различные типы элементов.

Тип элемента Описание
Header Раздел заголовка DataGrid элемента управления .
Footer Раздел нижнего DataGrid колонтитула элемента управления.
Item Элемент в элементе DataGrid управления .
AlternatingItem Чередующийся элемент в элементе DataGrid управления .
SelectedItem Выбранный элемент в элементе DataGrid управления .
EditItem Элемент, выбранный для редактирования в элементе DataGrid управления .
Separator Разделитель между элементами DataGrid элемента управления.
Pager Раздел выбора страницы DataGrid элемента управления.

Применяется к

См. также раздел