Aracılığıyla paylaş


Parola kutusu

Parola kutusu, gizlilik amacıyla içine yazılan karakterleri gizleyen bir metin giriş kutusudur. Parola kutusu, metin kutusuna benzer, ancak girilen metnin yerine yer tutucu karakterleri gösterir. Yer tutucu karakteri yapılandırabilirsiniz.

Parola kutusu odaklandığında yazılan metin

Varsayılan olarak, parola kutusu kullanıcının bir göster düğmesini basılı tutarak parolasını görüntülemesi için bir yol sağlar. Göster düğmesini devre dışı bırakabilir veya parolayı göstermek için onay kutusu gibi alternatif bir mekanizma sağlayabilirsiniz.

Doğru kontrol bu mu?

Parola veya Sosyal Güvenlik numarası gibi diğer özel verileri toplamak için PasswordBox denetimi kullanın.

Doğru metin denetimini seçme hakkında daha fazla bilgi için Metin denetimleri makalesine bakın.

Recommendations

  • Parola kutusunun amacı açık değilse etiket veya yer tutucu metin kullanın. Metin giriş kutusunun değeri olsun veya olmasın etiket görünür. Yer tutucu metin, metin giriş kutusunun içinde görüntülenir ve bir değer girildikten sonra kaybolur.
  • Parola kutusuna girilebilen değer aralığı için uygun bir genişlik verin. Word uzunluğu diller arasında farklılık gösterir, bu nedenle uygulamanızın dünya için hazır olmasını istiyorsanız yerelleştirmeyi hesaba katabilirsiniz.
  • Parola giriş kutusunun yanına başka bir denetim koymayın. Parola kutusunda, kullanıcıların yazdıkları parolaları doğrulamaları için bir parola açma düğmesi bulunur ve hemen yanında başka bir denetim olması, kullanıcıların diğer denetimle etkileşime geçtiğinde parolalarını yanlışlıkla ortaya çıkartır. Bunun olmasını önlemek için, put kutusuna parola ile diğer denetim arasında bir boşluk koyun veya diğer denetimi bir sonraki satıra yerleştirin.
  • Hesap oluşturmak için iki parola kutusu sunmayı göz önünde bulundurun: biri yeni parola için, diğeri de yeni parolayı onaylamak için.
  • Oturum açma işlemleri için yalnızca tek bir parola kutusu gösterin.
  • PIN girmek için parola kutusu kullanıldığında, onay düğmesi kullanmak yerine son numara girildiğinde anında yanıt vermeyi göz önünde bulundurun.

Örnekler

Parola kutusu, çeşitli durumlara sahiptir ve bunlar arasında özellikle dikkat çekenler de vardır.

Bekleyen bir parola kutusu, kullanıcının amacını bilmesi için ipucu metnini gösterebilir:

Parola kutusu dinlenme durumundayken ipucu metniPassword box in rest state with hint textPassword box in rest state with hint text

Kullanıcı parola kutusuna yazdığında, varsayılan davranış, girilen metni gizleyen madde işaretlerini göstermektir.

Parola kutusu odaklandığında yazılan metin

Sağdaki "göster" düğmesine basıldığında girilen parola metnine bir göz atabilirsiniz:

Parola kutusu metni ortaya çıktı

Parola kutusu oluşturma

WinUI 3 Galeri simgesi WinUI 3 Galeri uygulaması, WinUI denetimlerinin ve özelliklerinin etkileşimli örneklerini içerir. uygulamayı Microsoft Store adresinden alın veya GitHub üzerindeki kaynak koduna göz atın.

PasswordBox'ın içeriğini almak veya ayarlamak için Password özelliğini kullanın. Bunu, kullanıcı parolayı girerken doğrulama gerçekleştirmek için PasswordChanged olayının işleyicisinde yapabilirsiniz. Alternatif olarak, kullanıcı metin girişini tamamladıktan sonra doğrulama gerçekleştirmek için tıklamabir düğme gibi başka bir olay da kullanabilirsiniz.

PasswordBox'ın varsayılan görünümünü gösteren bir parola kutusu denetiminin XAML'i aşağıdadır. Kullanıcı bir parola girdiğinde, bunun sözlük anlamıyla "Parola" olup olmadığını kontrol edersiniz. Bu durumda kullanıcıya bir ileti görüntülersiniz.

<StackPanel>  
  <PasswordBox x:Name="passwordBox" Width="200" MaxLength="16"
             PasswordChanged="passwordBox_PasswordChanged"/>

  <TextBlock x:Name="statusText" Margin="10" HorizontalAlignment="Center" />
</StackPanel>   
private void passwordBox_PasswordChanged(object sender, RoutedEventArgs e)
{
    if (passwordBox.Password == "Password")
    {
        statusText.Text = "'Password' is not allowed as a password.";
    }
    else
    {
        statusText.Text = string.Empty;
    }
}

Bu kod çalıştırıldığında ve kullanıcı "Parola" girdiğinde elde edilen sonuç aşağıdadır.

Doğrulama iletisi ile parola kutusu

Parola karakteri

PasswordChar özelliğini ayarlayarak parolayı maskelerken kullanılan karakteri değiştirebilirsiniz. Burada varsayılan madde işareti bir pound işaretiyle değiştirilir.

<PasswordBox x:Name="passwordBox" Width="300" PasswordChar="#"/>

Sonuç şöyle görünür.

Özelleştirilmiş karakterPassword box with a custom characterPassword box with a custom characteriçeren parola kutusu

Üst bilgiler ve yer tutucu metin

PasswordBox için bağlam sağlamak amacıyla Üst Bilgi ve PlaceholderText özelliklerini kullanabilirsiniz. Bu, özellikle parolayı değiştirmek için formda olduğu gibi birden çok kutunuz olduğunda kullanışlıdır.

<PasswordBox x:Name="passwordBox" Width="200" Header="Password" PlaceholderText="Enter your password"/>

Parola kutusu dinlenme durumundayken ipucu metniPassword box in rest state with hint textPassword box in rest state with hint text

Maksimum uzunluk

MaxLength özelliğini ayarlayarak kullanıcının girebileceği en fazla karakter sayısını belirtin. En düşük uzunluğu belirten bir özellik yoktur, ancak uygulama kodunuzda parola uzunluğunu denetleyebilir ve başka bir doğrulama gerçekleştirebilirsiniz.

Parola gösterme modu

PasswordBox'ta kullanıcının parola metnini görüntülemek için basabileceği yerleşik bir düğme vardır. Kullanıcının eyleminin sonucu aşağıdadır. Kullanıcı serbest bıraktığında parola otomatik olarak yeniden gizlenir.

Parola kutusu metni ortaya çıktı

Göz atma modu

Varsayılan olarak, parola gösterme düğmesi (veya "göz atma" düğmesi) gösterilir. Kullanıcının parolayı görüntülemek için düğmeye sürekli olarak basması gerekir, böylece yüksek düzeyde güvenlik sağlanır.

PasswordRevealMode özelliğinin değeri, parola gösterme düğmesinin kullanıcıya görünür olup olmadığını belirleyen tek faktör değildir. Diğer faktörler arasında denetimin minimum genişliğin üzerinde görüntülenip görüntülenmediği, PasswordBox'ın odağı olup olmadığı ve metin girişi alanında en az bir karakter bulunup bulunmadığı yer alır. Parola gösterme düğmesi yalnızca PasswordBox odağı ilk kez aldığında ve bir karakter girildiğinde gösterilir. PasswordBox odağı kaybederse ve odağı yeniden kazanırsa, parola temizlenmediği ve karakter girişi baştan başlamadığı sürece göster düğmesi yeniden gösterilmez.

Gizli ve Görünür modlar

Diğer PasswordRevealMode numaralandırma değerleri Hidden ve Visible, parolayı göster düğmesini gizler ve parolanın gizlenip gizlenmeyeceğini program aracılığıyla yönetmenize olanak sağlar.

Parolayı her zaman gizleyebilmek için PasswordRevealMode değerini Gizli olarak ayarlayın. Parolanın her zaman gizlenmesine gerek duymadığınız sürece, kullanıcının PasswordRevealMode değerini Gizli ve Görünür arasında değiştirmesine izin veren özel bir kullanıcı arabirimi sağlayabilirsiniz. Örneğin, aşağıdaki örnekte gösterildiği gibi parolanın gizlenip gizlenmediğini değiştirmek için bir onay kutusu kullanabilirsiniz. Kullanıcının mod değiştirmesine izin vermek için ToggleButtongibi diğer denetimleri de kullanabilirsiniz.

Bu örnekte, kullanıcının PasswordBox'ın gösterme modunu değiştirmesine izin vermek için CheckBox nasıl kullanılacağı gösterilmektedir.

<StackPanel Width="200">
    <PasswordBox Name="passwordBox1"
                 PasswordRevealMode="Hidden"/>
    <CheckBox Name="revealModeCheckBox" Content="Show password"
              IsChecked="False"
              Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
</StackPanel>
private void CheckBox_Changed(object sender, RoutedEventArgs e)
{
    if (revealModeCheckBox.IsChecked == true)
    {
        passwordBox1.PasswordRevealMode = PasswordRevealMode.Visible;
    }
    else
    {
        passwordBox1.PasswordRevealMode = PasswordRevealMode.Hidden;
    }
}

Bu PasswordBox şuna benzer.

Özel göster düğmeli parola kutusu

Metin denetiminiz için doğru klavyeyi seçin

Kullanıcıların dokunmatik klavyeyi veya Yumuşak Giriş Paneli'ni (SIP) kullanarak veri girmelerine yardımcı olmak için, metin denetiminin giriş kapsamını kullanıcının girmesi beklenen veri türüyle eşleşecek şekilde ayarlayabilirsiniz. PasswordBox yalnızca Password ve NumericPin giriş kapsamı değerlerini destekler. Diğer tüm değerler yoksayılır.

Giriş kapsamlarını kullanma hakkında daha fazla bilgi için bkz. Dokunmatik klavyeyi değiştirmek için giriş kapsamını kullanma.

Metin denetimleri