2013-07-04 24 views
11

yılında salt okunur DropDownList yapmak.nasıl salt okunur için</p> <pre><code>TextBox.ReadOnly = false; </code></pre> <p>kullanıyorum C#

Nasıl DropDownList üzerinde tamir edebilirim?

ben gibi = Etkin yanlış özelliklerini ...

TextBox.Enabled = false; 
DropDownList.Enabled = false; 

ama Kullanıcılara bu css sınıfı çalışma zamanında bu hem kontrol hem de çağrı sonra değil.

Lütfen bana "ReadOnly" gibi özellikler verin.

+1

Salt okunur bir liste de bir etiket olabilir. Değeri değiştiremezsen, ne anlamı var. – Jodrell

+2

Aslında bunu yapmak istiyorum ... Eğer bu onay kutusunu işaretlediysem, bundan sonra herhangi bir metin kutusunun ve açılır listenin herhangi bir değerini değiştiremiyorum. –

+0

Metin kutusu düzenlenebilir, bu yüzden nt wnt düzenlemek için kullanılır, ancak açılır kapanır çalışma zamanında doldurulur, bu yüzden hiçbir readonly özelliği için –

cevap

12

Orada

deneyin kullanarak asp.net'de DropDownList için salt okunur bir özelliktir:

<asp:DropDownList ID="DropDownList1" runat="server" Enabled="False"> 
    </asp:DropDownList> 

Ya zamanında değiştirin:

DropDownList1.Enabled=false; 

ve de css sınıfı bulunuyor değiştirin.

DropDownList1.CssClass = "class"; 
+1

Teşekkürler, İş tekrar teşekkürler, zamanımı form tasarımımdan korusun.:) –

+0

hoşgeldiniz;) –

+5

Bir 'disabled' açılır listesinin, verilerin post_back'de hesaba katılmadığı dikkat çekiyor. Salt okunur kontroller ile gerçekleşen bir şey. –

8

bir başka yolu:

Kod Arkası: Hemen eklemek nitelik disabled

DropDownList1.Attributes.Add("disabled", "disabled"); 

İstemci Tarafı:

$("#DropDownList1").attr("disabled","disabled"); 

+0

Bunu denedim ve codebehind'den almayı denediğimde açılan menünün varsayılan değerini veriyor. – Jack

3

JS FIDDLE = "false" Etkin gibi bir paneli kullanın ve içine kontrolünüzü koyun: Engelli dropdownlist veri geri gönderme içinde okunamaz

<asp:Panel ID="pnlname" runat="server" Enabled="false"> 
    <asp:DropDownList ID="DropDownList1" runat="server"> 
    </asp:DropDownList> 
</asp:Panel> 
0

gibi. Bu nedenle, bir geçici çözüm, onu devre dışı bırakmaz, ancak önce açılır listeyi temizler ve ardından yalnızca seçili olan öğeyi bağlar.

ListItem item = DropDownList.SelectedItem; 
DropDownList.Items.Clear(); 
DropDownList.Items.Add(item); 
İlgili konular