Internet Explorer'da Otomatik Tamamlama etkinse TextBox denetiminin TextChanged olayı tetiklenmeyebilir
Uyarı
Kullanımdan kaldırılan, destek dışı Internet Explorer 11 masaüstü uygulaması, Windows 10'un belirli sürümlerinde Microsoft Edge güncelleştirmesi aracılığıyla kalıcı olarak devre dışı bırakılmıştır. Daha fazla bilgi için bkz. Internet Explorer 11 masaüstü uygulamasının kullanımdan kaldırılması hakkında SSS.
Bu makalede, Bir TextBox denetiminin TextChanged olayının Internet Explorer'da Otomatik Tamamlama özelliği etkinleştirildiğinde tetiklenmemesi sorununu çözmek için geçici çözüm sağlanır.
Orijinal ürün sürümü: Internet Explorer
Özgün KB numarası: 873198
Belirtiler
Microsoft Internet Explorer'da formların Otomatik Tamamlama özelliğini etkinleştirdiğinizde ve bir Web uygulamasındaki TextBox denetiminin Otomatik Tamamlama açılan listesinden herhangi bir metin seçtiğinizde, TextBox denetimindeki metin değişse bile TextBox denetiminin TextChanged olayı tetiklenmez.
Neden
Bu davranış, Otomatik Tamamlama özelliğini kullanarak açılan listeden metin seçtiğinizde Internet Explorer'ın textBox denetiminin TextChanged olayını tetikleyememesinden kaynaklanmaktadır.
Geçici Çözüm
Bu davranışı geçici olarak çözmek için Web formunun Otomatik Tamamlama özelliğini devre dışı bırakın. Özelliği devre dışı bırakmak için şu adımları izleyin:
Çözüm Gezgini'da WebForm1.aspx sağ tıklayın ve Tasarım Aracı Görüntüle'ye tıklayın.
WebForm1.aspx HTML görünümüne geçin.
Aşağıdaki kodu bulun:
<form id="Form1" method="post" runat="server">
3. adımda bulunan kodu aşağıdaki kodla değiştirin:
<form id="Form1" method="post" runat="server" autocomplete="off">
Davranışı yeniden oluşturma adımları
1. Adım: Formlar için Otomatik Tamamlama özelliğini etkinleştirme
Internet Explorer'ı başlatın.
Araçlar menüsünde Internet Seçenekleri'ne tıklayın. İnternet Seçenekleri iletişim kutusu görünür.
İçerik sekmesinde, Kişisel bilgiler'in altında Otomatik Tamamla'ya tıklayın. Otomatik Tamamlama Ayarları iletişim kutusu görüntülenir.
Için Otomatik Tamamlama'yı kullan'ın altında, Formlar onay kutusunu tıklatıp seçin ve ardından Tamam'a tıklayın.
İnternet Seçenekleri iletişim kutusunda Tamam'a tıklayın.
2. Adım: TextBox denetimi içeren bir Web uygulaması oluşturma
Microsoft Visual Studio .NET'i başlatın.
Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklayın. Yeni Proje iletişim kutusu görüntülenir.
Proje Türleri'nin altında Visual C# Projeleri'ne tıklayın, Şablonlar'ın altında ASP.NET Web Uygulaması'na tıklayın, Konum kutusunu yazın
http://localhost/MyTestAppin
ve ardından Tamam'a tıklayın.Çözüm Gezgini'da WebForm1.aspx sağ tıklayın ve Tasarım Aracı Görüntüle'ye tıklayın.
Görünüm menüsünde Araç Kutusu'na tıklayın.
Web formuna bir TextBox denetimi ekleyin. Varsayılan olarak, TextBox1 adlı bir TextBox denetimi oluşturulur.
TextBox1 TextBox denetiminin Özellikler penceresinde AutoPostBack özelliğini True olarak ayarlayın.
TextBox1 TextBox denetiminin Özellikler penceresinde Olaylar'a tıklayın ve ardından TextChanged öğesine çift tıklayın. TextBox1_TextChanged yordamı, WebForm1.aspx dosyasının Kod görünümüne eklenir.
TextBox1_TextChanged yordamına bir kesme noktası ekleyin.
Dosya menüsünde Tümünü Kaydet'e tıklayarak tüm dosyaları kaydedin.
3. Adım: Web uygulamasını derleme ve hata ayıklama
Derleme menüsünde Çözüm Oluştur'a tıklayın.
Hata Ayıkla menüsünde Başlat'a tıklayın. WebForm1 - Microsoft Internet Explorer Web sayfası görüntülenir.
Metin kutusuna text1 yazın ve ENTER tuşuna basın. Hata ayıklayıcının WebForm1.aspx dosyasının Kod görünümündeki TextBox1_TextChanged yordamında durduğunu fark edeceksiniz.
Hata Ayıkla menüsünde Devam'a tıklayın.
WebForm1 - Microsoft Internet Explorer Web sayfasındaki metin kutusuna text2 yazın ve ENTER tuşuna basın. Hata ayıklayıcının WebForm1.aspx dosyasının kod görünümündeki TextBox1_TextChanged yordamında yeniden durduğunu fark edersiniz.
Hata Ayıkla menüsünde Devam'a tıklayın.
WebForm1 - Microsoft Internet Explorer Web sayfasındaki metin kutusuna t yazın. Daha önce yazdığınız sözcüklerin açılan listesini fark edeceksiniz.
AŞAĞI OK tuşunu kullanarak metin1'i seçin ve enter tuşuna basın.
TextBox1 TextBox denetiminin TextChanged olayının tetiklenmediğini görürsünüz.
Başvurular
Daha fazla bilgi için bkz. TextBox.AutoPostBack Özelliği.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin