Makale numarası: 317690 - Son Gözden Geçirme: 29 Nisan 2007 Pazar - Gözden geçirme: 1.7

Visual Basic. NET'te AutoEventWireup özniteliği nasıl kullanılır

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Özet

Bu makalede, Microsoft ASP.NET Web Forms'da AutoEventWireup özniteliği bir etkin biçimde kullanmak nasıl anlatılmaktadır.

AutoEventWireup, @ Page yönergesinde bir özniteliktir. AutoEventWireup özniteliği true veya false değerinde olabilir. Bir ASP.NET Web uygulaması Microsoft Visual Studio. NET'i kullanarak oluşturulduğunda AutoEventWireup özniteliğinin değeri false ayarlanır. Bu makale ve AutoEventWireup</a0> özniteliğinin varsayılan değerlerini değiştirmek için açıklamaktadır. Bu makalede, Microsoft Visual Basic. NET'le yazılmış bir ASP.NET Web Forms kodu örneklerle birlikte, bu özniteliğin kullanım de açıklanır.

ASP.NET Web Forms ve kullanıcı denetimlerini Web AutoEventWireup özniteliği kullanabilir. AutoEventWireup özniteliğinin değeri true olarak ayarlandığında, sonucu basit kodudur. AutoEventWireup özniteliğinin değeri false belirli koşullarda için ayarlarsanız, ASP.NET Web uygulamasını daha iyi yapar.

AutoEventWireup özniteliğinin varsayılan değeri, aşağıdaki konumlarda belirtebilirsiniz:
  • Machine.config dosyası
  • Web.config dosyası
  • Tek tek Web Forms (.aspx dosyaları)
  • Web kullanıcı denetimlerini (.ascx dosyalarını)
AutoEventWireup özniteliğinin değeri true olarak ayarlandığında, ASP.NET çalıştırma modülü, olayları, olay işleyicileri Page_Load veya page_ınit belirtmek için gerektirmez. Bu, Visual Basic. NET'te Handles anahtar sözcüğünü, sunucu komut dosyası Web formunda kullanılacak yok anlamına gelir.

Varsayılan değer olarak, ASP.NET Web uygulaması Visual Studio. NET'te oluşturulduğunda, AutoEventWireup özniteliğinin değeri false .aspx sayfası olarak ayarlanır ve olay işleyicileri otomatik olarak oluşturulur. Bu makalede, AutoEventWireup</a0> özniteliğinin varsayılan ayarlarını açıklar ve yararlı bazı kod listeler.


Gereksinimler

Bu makalede, aşağıdaki konularda bilgi sahibi olduğunuz varsayılmaktadır:
  • ASP.NET ile programlama
  • Visual Basic .NET ile programlama
Aşağıdaki listede, gereksinim duyacağınız donanım, yazılım, ağ altyapısı ve hizmet paketleri önerilmektedir:
  • Microsoft Visual Studio .NET 2002 veya Microsoft Visual Studio .NET 2003
  • Microsoft Windows 2000, Microsoft Windows XP veya Microsoft Windows Server 2003

Varsayılan değerleri AutoEventWireup özniteliği yapılandırın.

AutoEventWireup özniteliğinin değeri <pages>bölümünde Machine.config dosyasını veya Web.config dosyasında aşağıdaki gibi bildirilebilir:
<configuration>
   <system.web>
      <pages autoEventWireup="true|false" />
   </system.web>
</configuration>
Machine.config dosyasında aşağıdaki değişiklik yaparsanız, değişiklikler bilgisayardaki tüm ASP.NET Web Forms etkiler. Web.config dosyasında aşağıdaki değişiklik yaparsanız, değişiklikler yalnızca dosyanın ait olduğu uygulama etkiler.

AutoEventWireup özniteliğinin değeri de tek tek Web formunda değiştirilebilir. Web formu değiştirmek için <a0></a0>, AutoEventWireup özniteliği @ Page yönergesinde için aşağıdaki gibi ekleyin:
<% @Page AutoEventWireup="true" %>

AutoEventWireup özniteliğinin değeri false olarak ayarlayın.

El ile kurma olayları bir işlev için kanca AutoEventWireup özniteliği false değerini kullanın. Aşağıdaki örnek bir ASP.NET Web Form <a1>Page</a1> nesnesinin Load olayı yönetmek için kullanabileceğiniz kod göster:
  1. Visual Studio .NET'i başlatın.
  2. Dosya menüsünde Yeni ' nin üzerine gelin ve sonra Project ' i tıklatın.
  3. Yeni proje) iletişim kutusunda, Project Types altında Visual Basic Projects ' ı tıklatın ve ASP.NET Web uygulamasışablonları altında tıklatın.
  4. Konum kutusuna <a1>http://</a1> ServerName / MyWebApp ve sonra Tamam ' ı tıklatın.

    NotServerName yer tutucu bir sunucu adı ve MyWebApp örnek bir ASP.NET Web uygulaması.
  5. Solution Explorer'da (Çözüm Gezgini), WebForm1.aspx dosyasını sağ tıklatın, sonra da Yeniden Adlandır ' ı tıklatın ve sonra EventWireUpFalse.aspx yazın.
  6. EventWireUpFalse.aspx varolan kodu aşağıdaki kodla dosya Değiştir:
    <%@ Page Language="vb" AutoEventWireup="false" Inherits="MyWebApp.EventWireUpFalse"%>
    <html>
       <head>
          <title>Visual Basic .NET WIRE-UP FALSE</title>      
       </head>   
          <body><p><% Response.Write(message) %></p></body>   
    </html>
  7. EventWireUpFalse.aspx.vb varolan kodu aşağıdaki kodla dosya Değiştir:
    Public Class EventWireUpFalse
        Inherits System.Web.UI.Page
    
       Public message As String
       Public Sub Page_Load(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load    
        'MyBase.Load is the type for the Load event of the page.
          message = "The Page_Load event fired with the AutoEventWireup attribute set to false"
       End Sub
    
    End Class
    
  8. Hata Ayıkla menüsünde oluşturmak ve proje çalıştırmak için Başlat ' ı tıklatın.

    ASP.NET sayfa çerçevesi Page_Load yordamına harekete bu örnekte, bir ileti alırsınız. AutoEventWireup özniteliğinin değeri false olarak ayarlanırsa, Handles anahtar sözcüğünü kullanın ve başvuru Load olayı ile onu izleyen: MyBase.Load.

AutoEventWireup özniteliğinin değeri true olarak ayarlayın.

AutoEventWireup özniteliğinin değeri false olarak ayarladığınızda, el ile işlevleri olaylara kadar kanca gerekir. Diğer taraftan, ASP.NET sayfa çerçevesi otomatik olarak AutoEventWireup özniteliğinin değeri true olarak ayarlandığında, olayları kanca. AutoEventWireup özniteliğinin değeri true olduğunda bir ASP.NET Web Form Page_Load olay işleyicisinde kodu için <a0></a0>, aşağıdaki adımları izleyin:
  1. Visual Studio .NET.
  2. Dosya menüsünde Yeni ' nin üzerine gelin ve sonra Project ' i tıklatın.
  3. Yeni proje) iletişim kutusunda, Project Types altında Visual Basic Projects ' ı tıklatın ve ASP.NET Web uygulamasışablonları altında tıklatın.
  4. Konum kutusuna <a1>http://</a1> ServerName / MyWebApp ve sonra Tamam ' ı tıklatın. Not:ServerName yer tutucu bir sunucu adı ve MyWebApp örnek bir ASP.NET Web uygulaması.
  5. Solution Explorer'da (Çözüm Gezgini), WebForm1.aspx dosyasını sağ tıklatın, sonra da Yeniden Adlandır ' ı tıklatın ve sonra EventWireUpTrue.aspx yazın.
  6. Varolan EventWireUpTrue.aspx dosyasındaki kodu aşağıdaki kodla değiştirin: <a1>
    <%@ Page Language="vb" AutoEventWireup="true" Inherits="MyWebApp.EventWireUpTrue"%>
    <html>
       <head>
          <title>Visual Basic .NET WIRE-UP TRUE</title>      
       </head>   
          <body><p><% Response.Write(message) %></p></body>   
    </html>
  7. EventWireUpTrue.aspx.vb varolan kodu aşağıdaki kodla dosya Değiştir:
    Public Class EventWireUpTrue
       Inherits System.Web.UI.Page
    
       Public message As String
       Public Sub Page_Load(ByVal Sender As System.Object, ByVal e As System.EventArgs)
          message = "The Page_Load event fired with the value of the AutoEventWireup attribute set to true."
       End Sub
    
    End Class
  8. Hata Ayıkla menüsünde oluşturmak ve proje çalıştırmak için Başlat ' ı tıklatın.

    Page_Load</a0> olay işleyicisi, bir ileti görüntülemek için kullanın. Ancak, bu durumda, ASP.NET sayfa çerçevesi, çünkü bunu yapar Handles anahtar kullanmak gerekmez.

Performans anahtarı olduğunda true olarak AutoEventWireup öznitelik ayarı yapmayın

Performans anahtar dikkat etmeniz gereken durumlarda, AutoEventWireup özniteliğinin değeri doğru olarak ayarlanmamış gerekir. ASP.NET sayfa çerçevesi AutoEventWireup özniteliğinin değeri true olarak ayarlarsanız, her Web formu (.aspx sayfası) CreateDelegate yöntemi çağrısı yapmanız gerekir. Üzerinde bir otomatik hookup güvenmek yerine el ile olayları sayfasından, bu makaledeki kod örnekleri, gösterilen geçersiz.

Daha fazla bilgi için aşağıdaki Microsoft Developer Network (MSDN) Web sitesini ziyaret edin:
http://msdn.microsoft.com/library/en-us/dndotnet/html/dotnetperftips.asp (http://msdn.microsoft.com/library/en-us/dndotnet/html/dotnetperftips.asp)

AutoEventWireup özniteliği başka yollarla kullanın...

AutoEventWireup özniteliği de Web kullanıcı denetimlerinde kullanılan @ Control yönergesi bir özniteliktir. Bu makaledeki benzer şekilde, AutoEventWireup özniteliğini kullanabilirsiniz.

Referanslar

Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
303247  (http://support.microsoft.com/kb/303247/ ) ASP.NET arka planda kodlama modeline genel bakış
312311  (http://support.microsoft.com/kb/312311/ ) Visual Basic. NET'i kullanarak bir ASP.NET uygulamasının arka planda kodlama sınıfını dosyalarla çalışma
Daha fazla bilgi için aşağıdaki MSDN Web sitelerini ziyaret edin:
http://msdn2.microsoft.com/en-us/library/ydy4x04a(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/ydy4x04a(vs.71).aspx)

http://msdn.microsoft.com/en-us/library/fy30at8h.aspx (http://msdn.microsoft.com/en-us/library/fy30at8h.aspx)

http://msdn.microsoft.com/en-us/library/at2tetf6(VS.71).aspx (http://msdn.microsoft.com/en-us/library/at2tetf6(VS.71).aspx)

http://msdn2.microsoft.com/en-us/library/edzehd2t(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/edzehd2t(vs.71).aspx)

http://msdn.microsoft.com/en-us/library/ms973839.aspx (http://msdn.microsoft.com/en-us/library/ms973839.aspx)

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft ASP.NET 1.1
  • Microsoft ASP.NET 1.0
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
Anahtar Kelimeler: 
kbmt kbconfig kbhowtomaster kbwebforms KB317690 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:317690  (http://support.microsoft.com/kb/317690/en-us/ )