2010-03-04 74 views
4

在用戶控件中我有一個自定義按鈕。 Iam在aspx頁面上使用這個用戶控件。當用戶控件中的按鈕被點擊時,aspx頁面中的複選框和標籤應該被清除。你能讓我知道如何做到這一點?用戶控件點擊事件

回答

1

如果您不介意做回發,最簡單的方法是將事件處理程序添加到按鈕的OnClick事件中,然後手動將CheckBox的IsChecked屬性設置爲false,並將標籤的Text屬性到事件處理程序中的空白字符串。

在你的用戶控件
+1

我不認爲這會直接回答提出的問題。這不是我如何清除複選框和回發標籤,但是如何在點擊用戶控件中的按鈕時清除複選框和標籤頁。 – 2010-03-04 19:03:21

3

你需要創建一個公共事件處理

public event EventHandler UpdateParentPage; 

,並在你的用戶控件的按鈕單擊事件,放

protected void btn_Click(object sender, EventArgs e) 
     { 
       if (this.UpdateParentPage != null) 
        UpdateParentPage(sender, e); 
     } 

您父頁面的代碼背後,設置事件處理程序的usercontrol:

userControl.UpdateParentPage+= new EventHandler(userControl_UpdateParentPage); 

然後,在您的隱患上實現新的事件處理程序NT頁:

protected void userControl_UpdateViewState(object sender, EventArgs e) 
{ 
     //clear your checkboxes and label here 
} 
+1

謝謝你讓我知道。 – xrx215 2010-03-04 22:03:39

1

你需要在你的用戶控件創建一個事件,並有被點擊的用戶控制按鈕時引發的事件。然後,在ASP.NET頁面中,您將爲該用戶控件事件創建一個事件處理程序,並在該事件處理程序中根據需要清除CheckBox和Label控件。

看看這篇文章:Passing Information Between Content and Master Pages,重點是標題爲從主頁傳遞信息到其內容頁面。本文的這一部分介紹了當用戶在母版頁中執行某些操作(如單擊按鈕)時如何在內容頁面中執行某些操作。這個概念與您想要用戶控件執行的操作相同。

另外,您可能會發現本教程對您有所幫助:Interacting with the Content Page from the Master Page。這裏引用的兩篇文章在C#和VB中都有示例代碼。

2

前段時間我不得不做一個類似的實現,並想出了創建一個重置按鈕點擊事件處理程序。

,並最終與具有非常簡單的是這樣的:

protected void ButtonReset_Click(object sender, EventArgs e) { 
    if (!TextBox1.Enabled || !ButtonSubmit.Enabled) { 
     TextBox1.Enabled = true; 
     ButtonSubmit.Enabled = true; 
    } 
    VieStateData.ResetSession(); // Created a dedicated class to handle the data and session state 
    TextBox1.Text = string.Empty; 
    TextBox2.Text = string.Empty; 

    // More controls to modify 

} 

有,當然,其他實現,讓您縮放/增強以後的事您的應用程序。

乾杯