مشاركة عبر


@ التطبيقات

الإشارة إلى ASP.NET التطبيق الملف الحالي (صفحة ويب أو عنصر تحكم المستخدم أو صفحة رئيسية) يقوم بتطبيق واجهة .NET Framework معيّنة.

<%@ Implements interface="ValidInterfaceName" %>

السمات

  • interface
    الواجهة إلى مطبق على عنصر تحكم الصفحة أو المستخدم.

ملاحظات

عند تطبيق صواب في "نماذج ويب" صفحة، يمكنك إنشاء به الأحداث وأساليب خصائص بين فتح علامات إغلاق <script> عنصر في التعليمات البرمجية تعريف كتلة. لا يمكنك استخدام هذا التوجيه بتطبيق واجهة في تعليمات برمجية - خلف الملف.

مثال

يوضح المثال التعليمات البرمجية التالي تحكم مستخدم يتضمن @ Implements توجيه الوصول إلى خصائص الستة IWebPart صواب. عن طريق تطبيق هذه الخصائص في صواب ، تمكين صواب لجعل خصائص ومظهر WebPart التحكم عند وضعها داخل WebPartZone عنصر التحكم. الجزء الأول من تعليمات برمجية المثال هو عنصر تحكم المستخدم; وضع هذا تعليمات برمجية في ملف وتحليل الاسم CalendarUserControl.ascx.

الجزء الثاني من تعليمات برمجية المثال الصفحة لاستضافة عنصر تحكم المستخدم. ملاحظة الصفحة تستخدم @ Register لتسجيل صواب للاستخدام على الصفحة. لاحظ أيضاً ذلك، عندما يتم التصريح عن عنصر تحكم المستخدم في النص الأساسي صواب ، بعض IWebPart خصائص مثل Title و Description يتم تعيين القيم في بناء الجملة مصرّحة. للحصول على مزيد من المعلومات حول كيفية تضمين عنصر تحكم مستخدم في صواب الصفحة ، راجع تسجيل اشتراك ، بناء جملة عنصر تحكم خادم مخصص ، و كيفية: تضمين تحكم مستخدم في صفحة ويب ASP.NET. لمزيد من المعلومات حول "أجزاء ويب" صواب ، راجع عناصر تحكم أجزاء ويب ASP.NET.

<!-- A user control that implements an interface. -->
<%@ Control language="C#" ClassName="CalendarUserControl" %>
<%@ implements 
    interface="System.Web.UI.WebControls.WebParts.IWebPart" %>

<script runat="server">

  private string m_Description;
  private string m_Title;
  private string m_TitleIconImageUrl;
  private string m_TitleUrl;
  private string m_CatalogIconImageUrl;
  
  [Personalizable]
  public string Description
  {
    get
    {
      object objTitle = ViewState["Description"];
      if (objTitle == null)
        return String.Empty;

      return (string)objTitle;
    }
    set
    {
      ViewState["Description"] = Server.HtmlEncode(value);
    }
  }

  [Personalizable]
  public string Title
  {
    get
    {
      object objTitle = ViewState["Title"];
      if (objTitle == null)
        return String.Empty;

      return (string)objTitle;
    }
    set
    {
      ViewState["Title"] = Server.HtmlEncode(value);
    }
  }

  public string Subtitle
  {
    get
    {
      object objSubTitle = ViewState["Subtitle"];
      if (objSubTitle == null)
        return "Acme Corp";
      return (string)objSubTitle;
    }

  }

  [Personalizable]
  public string TitleIconImageUrl
  {
    get
    {
      object objTitle = ViewState["TitleIconImageUrl"];
      if (objTitle == null)
        return String.Empty;

      return (string)objTitle;
    }
    set
    {
      ViewState["TitleIconImageUrl"] = Server.HtmlEncode(value);
    }
  }

  [Personalizable]
  public string TitleUrl
  {
    get
    {
      object objTitle = ViewState["TitleUrl"];
      if (objTitle == null)
        return String.Empty;

      return (string)objTitle;
    }
    set
    {
      ViewState["TitleUrl"] = Server.HtmlEncode(value);
    }
  }

  [Personalizable]
  public string CatalogIconImageUrl
  {
    get
    {
      object objTitle = ViewState["CatalogIconImageUrl"];
      if (objTitle == null)
        return String.Empty;

      return (string)objTitle;
    }
    set
    {
      ViewState["CatalogIconImageUrl"] = Server.HtmlEncode(value);
    }
  }

</script>
<asp:calendar id="Calendar1" runat="server" />


<!-- A page that registers and hosts the user control. -->
<%@ Page language="C#" %>
<%@ register tagprefix="uc1" 
    tagname="CalControl" 
    src="~/CalendarUserControl.ascx" %>

<!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 id="Head1" runat="server">
    <title>Calendar Page</title>
</head>
<body>
  <form id="form1" runat="server">
    <asp:webpartmanager id="manager1" runat="server" />
    <asp:webpartzone id="WebPartZone1" runat="server">
      <zonetemplate>
        <uc1:CalControl id="CalControl1" runat="server" 
          title="Personal Calendar" 
          description="My personal calendar for work." />      
      </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>
<!-- A user control that implements an interface. -->
<%@ Control language="VB" ClassName="CalendarUserControl" %>
<%@ implements 
    interface="System.Web.UI.WebControls.WebParts.IWebPart" %>

<script runat="server">

  Private m_Description As String
  Private m_Title As String
  Private m_TitleIconImageUrl As String
  Private m_TitleUrl As String
  Private m_CatalogIconImageUrl As String
  
  <Personalizable()> _
  Public Property Description() As String _
    Implements IWebPart.Description
    Get
      Dim objTitle As Object = ViewState("Description")
      If objTitle Is Nothing Then
        Return String.Empty
      End If
      Return CStr(objTitle)
    End Get
    Set(ByVal value As String)
      ViewState("Description") = Server.HtmlEncode(value)
    End Set
  End Property

  <Personalizable()> _
  Public Property Title() As String _
    Implements IWebPart.Title
    Get
      Dim objTitle As Object = ViewState("Title")
      If objTitle Is Nothing Then
        Return String.Empty
      End If
      Return CStr(objTitle)
    End Get
    Set(ByVal value As String)
      ViewState("Title") = Server.HtmlEncode(value)
    End Set
  End Property

  ReadOnly Property Subtitle() As String _
    Implements IWebPart.Subtitle
    Get
      Dim objSubTitle As Object = ViewState("Subtitle")
      If objSubTitle Is Nothing Then
        Return "Acme Corp"
      End If
      Return CStr(objSubTitle)
    End Get
  End Property

  <Personalizable()> _
  Public Property TitleIconImageUrl() As String _
    Implements IWebPart.TitleIconImageUrl
    Get
      Dim objTitle As Object = ViewState("TitleIconImageUrl")
      If objTitle Is Nothing Then
        Return String.Empty
      End If
      Return CStr(objTitle)
    End Get
    Set(ByVal value As String)
      ViewState("TitleIconImageUrl") = Server.HtmlEncode(value)
    End Set
  End Property

  <Personalizable()> _
  Public Property TitleUrl() As String _
    Implements IWebPart.TitleUrl
    Get
      Dim objTitle As Object = ViewState("TitleUrl")
      If objTitle Is Nothing Then
        Return String.Empty
      End If
      Return CStr(objTitle)
    End Get
    Set(ByVal value As String)
      ViewState("TitleUrl") = Server.HtmlEncode(value)
    End Set
  End Property

  <Personalizable()> _
  Public Property CatalogIconImageUrl() As String _
    Implements IWebPart.CatalogIconImageUrl
    Get
      Dim objTitle As Object = ViewState("CatalogIconImageUrl")
      If objTitle Is Nothing Then
        Return String.Empty
      End If
      Return CStr(objTitle)
    End Get
    Set(ByVal value As String)
      ViewState("CatalogIconImageUrl") = Server.HtmlEncode(value)
    End Set
  End Property

</script>
<asp:calendar id="Calendar1" runat="server" />


<!-- A page that registers and hosts the user control. -->
<%@ Page language="VB" %>
<%@ register tagprefix="uc1" 
    tagname="CalControl" 
    src="~/CalendarUserControl.ascx" %>

<!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 id="Head1" runat="server">
    <title>Calendar Page</title>
</head>
<body>
  <form id="form1" runat="server">
    <asp:webpartmanager id="manager1" runat="server" />
    <asp:webpartzone id="WebPartZone1" runat="server">
      <zonetemplate>
        <uc1:CalControl id="CalControl1" runat="server" 
          title="Personal Calendar" 
          description="My personal calendar for work." />      
      </zonetemplate>
    </asp:webpartzone>
  </form>
</body>
</html>

راجع أيضًا:

المهام

كيفية: تضمين تحكم مستخدم في صفحة ويب ASP.NET

المرجع

قالب النص بناء الجملة التوجيهي

المبادئ

نظرة عامة حول بناء جملة صفحة ASP.NET على ويب

طراز رمز صفحة ASP.NET على ويب

موارد أخرى

عناصر تحكم أجزاء ويب ASP.NET