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.

DynamicControl الفئة

Visual Studio 2010

Dهوplays المحتوى الذي هو المعرفة للحقل في templated عناصر تحكم حدود بيانات، باستخدام ميزات ASP.NET بيانات الحيوي.

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

[ToolboxBitmapAttribute(typeof(DynamicControl), "DynamicControl.bmp")]
public class DynamicControl : Control, 
	IAttributeAccessor, IFieldTemplateHost, IFieldFormattingOptions
<asp:DynamicControl />

في هذا الموضوع:

مقدمة

DynamicControl عنصر التحكم هو المستخدم من قبل عناصر تحكم حدود البيانات templated، مثل FormViewأو ListView، إلى dهوplay حقل بيانات الذي يستخدم ميزات ASP.NET البيانات الحيوي في صفحة مخصصة. يمكنك أيضا استخدام DynamicControlعنصر تحكم في TemplateFieldالحقل من GridViewأو DetailsViewعنصر تحكم.

DynamicControl عنصر تحكم يوفر الوظائف التي هو مماثلة لتلك الخاصة DynamicFieldالحقل. ومع ذلك، لأن DynamicControlعنصر التحكم هو فقط استخدامها داخل قوالب، فإنه يوفر لك مرونة أكثر في التحكم في كيفية بيانات هو dهوplayed حيث يمكنك إضافة عناصر HTML الأخرى حول الحقل. عندما تقوم باستخدام DynamicControlعنصر تحكم، يمكنك الاستفادة من الميزات التالية "بيانات الديناميكية":

  • تقديم العلم شكل تلقائي عنصر تحكم لكل حقل باستخدام قوالب الحقل، استناداً إلى نوع بيانات. الحقل قوالب يمكن ‏‏تاريخ التعديلها بشكل عام للتطبيق بالكامل.

  • توفير خاصية التحقق من صحة البيانات المضمنة ، استناداً إلى مخطط قاعدة البيانات. يمكنك أيضا إضافة أنواع التحقق من صحة بواسطة تخصيص نموذج بيانات.

  • تخصيص عرض البيانات للحقول الفردية باستخدام السمات في طراز البيانات أو باستخدام خاصية UIHint .

لتحديد حقل لعرض في DynamicControlعنصر تحكم، قم بتعيين DataFieldخاصية إلى اسم الحقل. يمكنك يطبق cusإلىm بسلسلة التنسيق إلى قيمة الحقل بتعيين DataFormatStringخاصية. افتراضياً، يكون لسلسلة التنسيق هو تطبيقها على قيم الحقل فقط عند التحكم بربط البيانات هو في الوضع القراءة فقط. لتطبيق تنسيق السلسلة قيم dهوplayed مع عنصر التحكم منضم للبيانات هو في تحرير الالوضع، بتعيين ApplyFormatInEditModeخاصية إلى true. إذا كانت القيمة أحد الحقول هو null، يمكن dهوplay تسمية توضيحية مخصصة عن طريق تعيين NullDisplayTextخاصية. DynamicControl عنصر تحكم يمكن أيضا تلقائياً بتحويل سلسلة أحرف فارغ ("") حقل قيم للقيم الفارغ بواسطة إعداد ConvertEmptyStringToNullخاصية إلى true.

DynamicControl عنصر تحكم عرض آخر يدعم أوضاع. إلى تحديد الوضع الذي إلى عرض DynamicControlالتحكم، قم بتعيين Modeخاصية. يعرض الجدول التالي أوضاع مختلفة.

ReadOnly

لعرض الوضع. وهذا يمنع مستخدم من تعديل قيم سجل أو حقل بيانات. يمكن استخدام أي من القوالب.

Edit

ل تحرير الوضع. وهذا يمكن المستخدمين إلى تحديث قيم سجل موجود. هو المستخدمة في القالب التحرير (عادة باسم EditItemTemplate).

Insert

لوضع الإدراج. ويتيح ذلك للمستخدمين بإدخال قيم لسجل جديد. يتم استخدامه في قالب إدراج (عادة باسم InsertItemTemplate).

يمكنك إخفاء DynamicControlالتحكم في عنصر تحكم حدود بيانات بتعيين Visibleخاصية إلى false.

بناء جملة مصرحة

<asp:DynamicControl
    ApplyFormatInEditMode="True|False"
    ConvertEmptyStringToNull="True|False"
    CssClass="string"
    DataField="string"
    DataFormatString="string"
    EnableViewState="True|False"
    HtmlEncode="True|False"
    ID="string"
    Mode="Edit|Insert|ReadOnly"
    NullDisplayText="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    UIHint="string"
    ValidationGroup="string"
    Visible="True|False"
>
</asp:DynamicControl>

راجع المثال البرمجي لوقت التشغيل لهذه الميزة: تشغيل.

يوضح المثال التالي كيفية استخدام DynamicControlعنصر تحكم في ListViewعنصر تحكم عرض، إدراج وحذف وتحرير القيم من جدول قاعدة بيانات. هو المهم ملاحظة أنه لجعل عملية الإدراج للعمل, IsDbGeneratedخاصية rowguidو ModifiedDateأعمدة التي تم تعيينها إلى true.


<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  protected void Page_Init(object sender, EventArgs e)
  {
    DynamicDataManager1.RegisterControl(ListView1);
  }
</script>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
  <title>DynamicControl Sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
      <asp:DynamicDataManager ID="DynamicDataManager1" runat="server"
        AutoLoadForeignKeys="true" />

      <asp:ValidationSummary ID="InsertValidationSummary" runat="server" EnableClientScript="true" 
        HeaderText="List of validation errors" ValidationGroup="Insert" />        
      <asp:DynamicValidator runat="server" ID="InsertValidator"
        ControlToValidate="ListView1" ValidationGroup="Insert" Display="None" />
      <asp:ValidationSummary ID="EditValidationSummary" runat="server" EnableClientScript="true" 
        HeaderText="List of validation errors" ValidationGroup="Edit" />
      <asp:DynamicValidator runat="server" ID="EditValidator" 
        ControlToValidate="ListView1" ValidationGroup="Edit" Display="None" />

      <asp:ListView ID="ListView1" runat="server" DataSourceID="LinqDataSource1"
        InsertItemPosition="LastItem">
        <LayoutTemplate>
          <table cellpadding="2" border="1" runat="server" id="tblCustomers">
            <tr runat="server">
              <th runat="server">&nbsp;</th>              
              <th runat="server">Name</th>
              <th runat="server">Number</th>
              <th runat="server">Standard Cost</th>
              <th runat="server">List Price</th>
              <th runat="server">Sell Start Date</th>
            </tr>
            <tr runat="server" id="itemPlaceholder" />
          </table>
          <asp:DataPager runat="server" ID="CustomersPager" PageSize="20">
            <Fields>
              <asp:NumericPagerField ButtonCount="10" />
            </Fields>
          </asp:DataPager>
        </LayoutTemplate>
        <ItemTemplate>
          <tr runat="server">
            <td>
              <asp:LinkButton ID="EditButton" runat="server" CommandName="Edit" 
                Text="Edit" CausesValidation="false" />
              <asp:LinkButton ID="DeleteButton" runat="server" CommandName="Delete" 
                Text="Delete" CausesValidation="false" 
                OnClientClick='return confirm("Are you sure you want to delete this item?");' />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="Name" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="ProductNumber" />
            </td>
            <td align="right">
              <asp:DynamicControl runat="server" DataField="StandardCost" DataFormatString="{0:C}" />
            </td>
            <td align="right">
              <asp:DynamicControl runat="server" DataField="ListPrice" DataFormatString="{0:C}" />
            </td>
            <td align="center">
              <asp:DynamicControl runat="server" DataField="SellStartDate" 
                DataFormatString="{0:MM/dd/yyyy}" NullDisplayText="&nbsp;" />
            </td>
          </tr>
        </ItemTemplate>
        <EditItemTemplate>
          <tr>
            <td>
              <asp:LinkButton ID="UpdateButton" runat="server" CommandName="Update" 
                Text="Update" ValidationGroup="Edit" />
              <asp:LinkButton ID="CancelButton" runat="server" CommandName="Cancel" 
                Text="Cancel" CausesValidation="false" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="Name" Mode="Edit" ValidationGroup="Edit" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="ProductNumber" Mode="Edit" ValidationGroup="Edit" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="StandardCost" Mode="Edit" ValidationGroup="Edit" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="ListPrice" Mode="Edit" ValidationGroup="Edit" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="SellStartDate" Mode="Edit" 
                ValidationGroup="Edit" DataFormatString="{0:MM/dd/yyyy}" ApplyFormatInEditMode="true" />
            </td>
          </tr>
        </EditItemTemplate>
        <InsertItemTemplate>
          <tr>
            <td>
              <asp:LinkButton ID="InsertButton" runat="server" CommandName="Insert" 
                Text="Insert" ValidationGroup="Insert" />
              <asp:LinkButton ID="CancelButton" runat="server" CommandName="Cancel" 
                Text="Cancel" CausesValidation="false" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="Name" Mode="Insert" ValidationGroup="Insert" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="ProductNumber" Mode="Insert" ValidationGroup="Insert" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="StandardCost" Mode="Insert" ValidationGroup="Insert" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="ListPrice" Mode="Insert" ValidationGroup="Insert" />
            </td>
            <td>
              <asp:DynamicControl runat="server" DataField="SellStartDate" Mode="Insert" ValidationGroup="Insert" />
            </td>
          </tr>
        </InsertItemTemplate>
      </asp:ListView>

      <!-- This example uses Microsoft SQL Server and connects   -->
      <!-- to the AdventureWorksLT sample database.              -->
      <asp:LinqDataSource ID="LinqDataSource1" runat="server" 
        TableName="Products"
        ContextTypeName="AdventureWorksLTDataContext"
        EnableUpdate="true"
        EnableDelete="true"
        EnableInsert="true" >
      </asp:LinqDataSource>

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


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

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008, نظام التشغيل Windows Server 2003

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

.NET Framework

مدعوم في: 4, 3.5 المزود بحزمة الخدمة SP1
إظهار: