This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

DataControlField الفئة

Visual Studio 2010

Serves as the base class for all data control field types, which represent a column of data in tabular data-bound controls such as DetailsView and GridView.

مساحة الاسم:  System.Web.UI.WebControls
التجميع:  System.Web (في System.Web.dll)

[TypeConverterAttribute(typeof(ExpandableObjectConverter))]
public abstract class DataControlField : IStateManager, 
	IDataSourceViewSchemaAccessor

يوضح المثال تعليمات برمجية التالي كيفية استخدام DataControlFieldخاصية إلى تعيين أن butإلىns في يتم عرض كائن ك butإلىns الدفع. الحصول أو قم بتعيين الالقيمة للإشارة إلى ما إذا كان التحقق من صحة هو تنفيذ عند زر في DataGridColumnالكائن هو النقر فوقه.DataGrid

DataControlField في حالة التحقق من صحة هو تنفيذ عند زر فيDetailsViewهو بالنقر فوقه؛ otherwهوe،GridView. بشكل افتراضي صفحة التحقق من صحة هو غير تنفيذ عند زر في الكائن هو النقر فوقه.

للحصول على معلومات حول كيفية استخدام هذا خيار لعامل التصفية، راجع .

الوصف

BoundField

LINQ مخصصة تعبير يمكن استدعاء في معالج أحداث.

ButtonField

للقيام بالتحقق من صفحة عند زر في هو بالنقر فوق قم بتعيين خاصية إلى . عند القيمة هو خاصية ، يمكنك أيضا استخدام خاصية لتعيين اسم مجموعة التحقق من صحة التي يؤدي إلى التحقق من صحة.

CheckBoxField

الحصول أو تعيين سلسلة تمثل الأمر الذي يتم تنفيذه عندما زر في الكائن هو النقر فوقه. سلسلة تمثل الأمر الذي يتم تنفيذه عندما زر في هو النقر فوقه.

CommandField

استخدم بإقران اسم أمر، مثل خاصية أو ، مع زر.

HyperLinkField

Determines whether a value هو greater than or less than a specified value, or whether a value هو between two values. يمكنك تعيين الخاصية لأي سلسلة تقوم بتعريف إجراء الذي سيتم تنفيذه عندما زر في الكائن هو النقر فوقه.

ImageField

وبعد ذلك، يمكنك تحديد برمجياً في comm و اسم في حدث hوler ل حدث و تنفيذ الإجراءات المناسبة.

TemplateField

يوضح المثال تعليمات برمجية التالي كيفية استخدام خاصية إلى إقران اسم أمر زر.

بعد ذلك، الأمر اسم النقر فوقها زر يتحدد بشكل برمجي في معالج الأحداث ل DataControlFieldيتم إجراء الأحداث والإجراءات المناسبة.BoundField

الحصول أو تعيين اسم الحقل من مصدر بيانات يربط إلى DataControlFieldالكائن. اسم الحقل إلى يربط إلى . استخدام DetailsViewالخاصية لتحديد اسم حقل من بيانات المصدر إلى يربط خاصية الأزرار الموجودة في الكائن. ربط عمود إلى حقل بدلاً من تعيين مباشرة FooterTextخاصية تسمح لك بعرض التسميات التوضيحية مختلفة عن الأزرار الموجودة في FooterStyleباستخدام قيم الموجودة في حقل معين.DetailsView The GridView control, however, uses the FooterText and FooterStyle properties if the ShowFooter property is set to true. الحصول على أو تعيينها سلسلة تحدد تنسيق عرض للتسمية التوضيحية في كل زر. سلسلة تحدد تنسيق عرض للتسمية التوضيحية في كل زر.ItemStyle If the type derived from DataControlField contains a control, as in the ButtonField or CheckBoxField classes, the ControlStyle property is applied to the field.

The following code example demonstrates how to use BoundField and ButtonField objects, which are derived from DataControlField, to display rows in a DetailsView control. The DetailsView control has the AutoGenerateRows property set to false, which enables it to display a subset of the data returned by the SelectCommand property.


<%@ page language="C#" %>
<!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" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
  <form id="form1" runat="server">

    <asp:sqldatasource
      id="SqlDataSource1"
      runat="server"
      connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
      selectcommand="Select * From Employees">
    </asp:sqldatasource>

    <asp:detailsview
      id="DetailsView1"
      runat="server"
      allowpaging="True"
      datasourceid="SqlDataSource1"
      height="208px"
      width="264px"
      autogeneraterows="False">
        <fields>

          <asp:boundfield
            sortexpression="LastName"
            datafield="LastName"
            headertext="LastName">
              <itemstyle backcolor="Yellow">
              </itemstyle>
          </asp:boundfield>

          <asp:boundfield
            sortexpression="FirstName"
            datafield="FirstName"
            headertext="FirstName">
              <itemstyle forecolor="#C00000">
              </itemstyle>
          </asp:boundfield>

          <asp:buttonfield
            text="TestButton"
            buttontype="Button">
          </asp:buttonfield>

        </fields>
    </asp:detailsview>

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


The following code example demonstrates how to extend the BoundField class to create a custom bound field that can be used in a GridView control. Similar to the CheckBoxField class, the RadioButtonField class represents a column of true or false data. However, although the data that the CheckBoxField class is bound to can be any set of true or false values, the set of data that the RadioButtonField class is bound to can have only one true value at any given time. This example demonstrates how to implement the ExtractValuesFromCell and InitializeCell methods, two important methods of all classes derived from DataControlField.


namespace Samples.AspNet.CS {

  using System;
  using System.Collections;
  using System.Collections.Specialized;
  using System.ComponentModel;
  using System.Security.Permissions;
  using System.Web;
  using System.Web.UI;
  using System.Web.UI.WebControls;

  [AspNetHostingPermission(SecurityAction.Demand, 
      Level=AspNetHostingPermissionLevel.Minimal)]
  public sealed class RadioButtonField : CheckBoxField {

    public RadioButtonField() {
    }

    // Gets a default value for a basic design-time experience. 
    // Since it would look odd, even at design time, to have 
    // more than one radio button selected, make sure that none
    // are selected.
    protected override object GetDesignTimeValue() {
        return false;
    }
    // This method is called by the ExtractRowValues methods of 
    // GridView and DetailsView. Retrieve the current value of the 
    // cell from the Checked state of the Radio button.
    public override void ExtractValuesFromCell(IOrderedDictionary dictionary,
                                               DataControlFieldCell cell,
                                               DataControlRowState rowState,
                                               bool includeReadOnly)
    {

      // Determine whether the cell contains a RadioButton 
      // in its Controls collection.
      if (cell.Controls.Count > 0) {
        RadioButton radio = cell.Controls[0] as RadioButton;

        object checkedValue = null;
        if (null == radio) {
          // A RadioButton is expected, but a null is encountered.
          // Add error handling.
          throw new InvalidOperationException
              ("RadioButtonField could not extract control.");
        }
        else {
            checkedValue = radio.Checked;
        }


        // Add the value of the Checked attribute of the
        // RadioButton to the dictionary.
        if (dictionary.Contains(DataField))
          dictionary[DataField] = checkedValue;
        else
          dictionary.Add(DataField, checkedValue);
      }
    }
    // This method adds a RadioButton control and any other 
    // content to the cell's Controls collection.
    protected override void InitializeDataCell
        (DataControlFieldCell cell, DataControlRowState rowState) {

      RadioButton radio = new RadioButton();

      // If the RadioButton is bound to a DataField, add
      // the OnDataBindingField method event handler to the
      // DataBinding event.
      if (DataField.Length != 0) {
        radio.DataBinding += new EventHandler(this.OnDataBindField);
      }

      radio.Text = this.Text;

      // Because the RadioButtonField is a BoundField, it only
      // displays data. Therefore, unless the row is in edit mode,
      // the RadioButton is displayed as disabled.
      radio.Enabled = false;
      // If the row is in edit mode, enable the button.
      if ((rowState & DataControlRowState.Edit) != 0 ||
          (rowState & DataControlRowState.Insert) != 0) {
        radio.Enabled = true;
      }

      cell.Controls.Add(radio);
    }
  }
}


RadioButtonFieldالتحويل إلى تنسيق المشار إليها بواسطة GridView. استخدام GridViewأسلوب لتحويل القيمة المحددة للتنسيق التي هو المشار إليها خاصية. أسلوب إرجاع السلسلة مساوية للقيمة، إذا كان خاصية هو ليس التعيين. بإعادة تعيين RadioButtonFieldالكائن إلى الخاص به الحالة الأولية. استخدام GridViewأسلوب إلى يعيد تعيين المعاملة الكائن إلى الخاص به الحالة الأولية.


<%@ page language="C#" %>
<%@ Register Tagprefix="aspSample"
             Namespace="Samples.AspNet.CS"
             Assembly="Samples.AspNet.CS" %>

<!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" >
<head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:gridview
          id="GridView1"
          runat="server"
          allowpaging="True"
          datasourceid="SqlDataSource1"
          allowsorting="True"
          autogeneratecolumns="False"
          autogenerateeditbutton="True"
          datakeynames="AnID">
            <columns>

                <aspSample:radiobuttonfield
                  headertext="RadioButtonField"
                  text="TeamLeader"
                  datafield="TrueFalse">
                </aspSample:radiobuttonfield>

                <asp:boundfield
                  insertvisible="False"
                  sortexpression="AnID"
                  datafield="AnID"
                  readonly="True"
                  headertext="AnID">
                </asp:boundfield>

                <asp:boundfield
                  sortexpression="FirstName"
                  datafield="FirstName"
                  headertext="FirstName">
                </asp:boundfield>

                <asp:boundfield
                  sortexpression="LastName"
                  datafield="LastName"
                  headertext="LastName">
                </asp:boundfield>

              </columns>
        </asp:gridview>
        <asp:sqldatasource
          id="SqlDataSource1"
          runat="server"
          connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
          selectcommand="SELECT AnID,FirstName,LastName,TeamLeader FROM Players"
          updatecommand="UPDATE Players SET TrueFalse='false';UPDATE Players SET TrueFalse='true' WHERE AnID=@anID">
        </asp:sqldatasource>

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


يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0
إظهار: