ControlDesigner.OnClick(DesignerRegionMouseEventArgs) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
當使用者在設計時點擊相關控制項時,設計主機會呼叫此功能。
protected:
virtual void OnClick(System::Web::UI::Design::DesignerRegionMouseEventArgs ^ e);
protected virtual void OnClick(System.Web.UI.Design.DesignerRegionMouseEventArgs e);
abstract member OnClick : System.Web.UI.Design.DesignerRegionMouseEventArgs -> unit
override this.OnClick : System.Web.UI.Design.DesignerRegionMouseEventArgs -> unit
Protected Overridable Sub OnClick (e As DesignerRegionMouseEventArgs)
參數
一個 DesignerRegionMouseEventArgs 指定使用者點擊的位置,以及可能的控制設計區域的物件。
範例
以下程式碼範例展示了如何在控制項可點擊區域使用事件處理程序 OnClick ,並用 DesignerRegionMouseEventArgs 物件來識別被點擊的區域。
這個程式碼範例是本課程更大程式碼範例 EditableDesignerRegion 的一部分。
// Handler for the Click event, which provides the region in the arguments.
protected override void OnClick(DesignerRegionMouseEventArgs e)
{
if (e.Region == null)
return;
// If the clicked region is not a header, return
if (e.Region.Name.IndexOf("Header") != 0)
return;
// Switch the current view if required
if (e.Region.Name.Substring(6, 1) != myControl.CurrentView.ToString())
{
myControl.CurrentView = int.Parse(e.Region.Name.Substring(6, 1));
base.UpdateDesignTimeHtml();
}
}
' Handler for the Click event, which provides the region in the arguments.
Protected Overrides Sub OnClick(ByVal e As DesignerRegionMouseEventArgs)
If IsNothing(e.Region) Then
Return
End If
' If the clicked region is not a header, return
If e.Region.Name.IndexOf("Header") <> 0 Then
Return
End If
' Switch the current view if required
If e.Region.Name.Substring(6, 1) <> myControl.CurrentView.ToString() Then
myControl.CurrentView = Integer.Parse(e.Region.Name.Substring(6, 1))
MyBase.UpdateDesignTimeHtml()
End If
End Sub
備註
設計主機會針對設計表面中控制項的特定動作提出該 ViewEvent 事件。 例如,在以下條件下會引發事件:
使用者點擊控制鍵。
控制設計師會在設計表面上繪製。
使用者可進入或退出該控制項的模板編輯模式。
ControlDesigner班級會提供一位預設代表來處理這個IControlDesignerView.ViewEvent活動。 由 衍生 ControlDesigner 的類別會覆寫該 OnClick 方法,處理使用者點擊控制項時引發的事件。
此 OnClick 方法允許衍生類別在不附加代理的情況下處理事件。 這是在衍生類別中處理事件的首選技術。
該方法的預設實作 OnClick 會回傳,且未執行任何處理。
給繼承者的注意事項
在類別中覆寫 OnClick(DesignerRegionMouseEventArgs) 該方法,從類別 ControlDesigner 衍生出來處理控制項的設計時點擊事件。 如果 e 不是 null,點擊的區域(如有的話)會在屬性中 Region 指定。