2012-03-27 80 views
1

我有一個典型的ASP.NET Web窗體應用程序。它有大約20個獨立的用戶控件(.ascx文件),每個控件都包含一個DetailsView控件。這個應用程序的一個要求是需要在這些用戶控件之外有一個單獨的編輯,更新和取消鏈接,當點擊這些鏈接時,會導致每個DetailsView對象進入正確的模式,編輯或ReadOnly,並且如果單擊更新,請執行適當的數據庫更新。換句話說,單擊「全局」鏈接時,必須以編程方式觸發客戶端單擊,以獲得在創建DetailsView或GridView時「免費」獲取的每個相應鏈接。我嘗試複製實際的__doPostBack事件,當您使用這些「內部」鏈接之一時,將其分配給一個字符串,做一個Page.ClientScript.RegisterScriptBlock,然後做一個LinkName.Attributes.Add(「onclick」 ,「script_string_name」) - 但我不能得到它的工作。什麼是完成這個的正確方法?以編程方式引發客戶端事件

+0

'_doPostBack'不是客戶端 - 它進入服務器。 – Hogan 2012-03-27 02:57:35

+0

然後我沒有正確表達自己。我可以看到「內部」鏈接生成一個__doPostBack調用,這導致DetailsView進入正確的模式。這就是我想要實現的,使用位於包含.aspx頁面上的單個鏈接(或一組鏈接)。 – user1294460 2012-03-27 03:06:56

+0

聽起來你正在使用MVC - 它是MVC還是Web表單?對於web表單,只需使用'asp:linkbutton'控件http://msdn.microsoft.com/en-us/library/1cd4z1zs(v=vs.71).aspx – Hogan 2012-03-27 10:45:35

回答

0

您可以使用asp:linkbutton控件來執行此操作。

相關問題