Birbirini Dışlayan Onay Kutuları Oluşturma (C#)
Christian Wenz tarafından
Seçeneklerden yalnızca biri seçilebilirse, radyo düğmeleri genellikle kullanılır. Ancak bir dezavantaj vardır: Gruptaki bir radyo düğmesi seçildikten sonra tüm radyo düğmelerinin işaretini kaldırmak mümkün değildir. Onay kutularının işareti herhangi bir zamanda kaldırılabilir, ancak birbirini dışlamaz. Bu öğretici, her iki yaklaşımın da en iyisini sağlar: birbirini dışlayan onay kutuları.
Genel Bakış
Seçeneklerden yalnızca biri seçilebilirse, radyo düğmeleri genellikle kullanılır. Ancak bir dezavantaj vardır: Gruptaki bir radyo düğmesi seçildikten sonra tüm radyo düğmelerinin işaretini kaldırmak mümkün değildir. Onay kutularının işareti herhangi bir zamanda kaldırılabilir, ancak birbirini dışlamaz. Bu öğretici, her iki yaklaşımın da en iyisini sağlar: birbirini dışlayan onay kutuları.
Adımlar
ASP.NET AJAX Denetim Araç Seti MutuallyExclusiveCheckBox genişleticisini içerir. Bu, programcıların bir grup adına (Key
öznitelik) herhangi bir onay kutusu atamasını sağlar. Aynı gruptaki tüm onay kutularından aynı anda yalnızca bir onay kutusu seçilebilir.
Yeni bir ASP.NET sayfasına iki onay kutusu koyarak başlayalım. Daha fazlası olabilir, ancak iki tanesi ilkeyi göstermek için yeterlidir:
<asp:CheckBox ID="cbYes" runat="server" />Yes
<asp:CheckBox ID="cbNo" runat="server" />No
Her iki onay kutusu için de sayfaya MutuallyExclusiveCheckBoxExtender denetimi yerleştirilmelidir. Html radyo düğmesi öğelerinin değer özniteliklerinin ait oldukları grubu belirtmek için aynı olması gerektiği gibi her iki Anahtar özniteliğinin de aynı değere sahip olması gerekir. Genişleticinin TargetControlID özelliği, onay kutusunun kimliğine işaret eder.
<ajaxToolkit:MutuallyExclusiveCheckBoxExtender ID="mecbe1" runat="server"
TargetControlID="cbYes" Key="YesNo" />
<ajaxToolkit:MutuallyExclusiveCheckBoxExtender ID="mecbe2" runat="server"
TargetControlID="cbNo" Key="YesNo" />
Son olarak, ASP.NET AJAX ScriptManager
Denetim Araç Seti'nin tüm öğeleri için gerekli olan AJAX ASP.NET ekleyin:
<asp:ScriptManager ID="asm" runat="server" />
Sayfayı kaydetme ve çalıştırma: Her iki onay kutusunu da işaretleyebilir ve işaretini kaldırabilirsiniz, ancak hiçbir zaman her iki onay kutusu da işaretlenemez.
Aynı anda yalnızca bir onay kutusu işaretlenebilir (Tam boyutlu resmi görüntülemek için tıklayın)