2011-01-31 29 views
5

Ben çözmeye çalışıyorum sorun atar. Kullanıcı bu kutulardan Enter vurduğunda, btnAddTag tıklatılmış gibi gönderilmesini istiyorum. (Imleç O kutularda olmadığı zaman, farklı bir varsayılan Gönder düğmesini var.)istisna

aspx:

<asp:Panel id="thePanel" runat="server"> 
    <asp:Button ID="btnAddTag" Text="Add Tag" runat="server" /> 
</asp:Panel> 

vb:

tagPanel.DefaultButton = btnAddTag.UniqueID 

istisna:

'tagPanel' dosyasının DefaultButton'u, IButtonControl türündeki bir denetimin kimliği olmalıdır. .

btnAddTag.UniqueID değeri ctl00$phMain$btnAddTag (a ana sayfa var, bu bölüm phMain denir).

Ayrıca, CType(tagPanel.FindControl("btnAddTag"), Button).UniqueID'u denedim.

+0

, İhtiyacım olduğunu bilmediğim bir dış 'eksik. Sadece – jbutler483

cevap

3

yapın: Burada

tagPanel.DefaultButton = btnAddTag.ID 

fazla bilgi: http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.panel.defaultbutton.aspx

+0

'u paylaştığımı düşündüm. Neden hiçbir fikrim olmasa da, her yerde UniqueID'ye ihtiyacım var gibi görünüyor ... – egrunin

+0

Göreceli bir "yol" kullanmalısınız. Anlamı, UniqueID benzer bir dize kullanın, böylece kaptan aşağı çocuk denetimine bir yol sağlar. Bu belgeyi Q/A yayınlarından başka bir yerde hiç görmedim. http://connect.microsoft.com/VisualStudio/feedback/details/103530/defaultbutton-in-panel-for-wizard-errs –

0

Denetimin kimliğini belirlesin değil Uniqueıd: benim durumda

tagPanel.DefaultButton = btnAddTag.ID