我沒有繼承控件。試圖通過Control.Size = Control.Size
觸發事件失敗,因爲它不會觸發,即使除非新的大小實際上不同。如何在不實際調整大小的情況下觸發Control.Resize事件?
4
A
回答
8
如果你繼承Control
,可以直接調用OnResize
,或將其暴露在API:
public void OnResize() {
this.OnResize(EventArgs.Empty);
}
但是,你不能任意控制做到這一點。你可以改變Size
來回?或者,你可以使用反射,但這是hacky:
typeof (Control).GetMethod("OnResize",
BindingFlags.Instance | BindingFlags.NonPublic)
.Invoke(myControl, new object[] {EventArgs.Empty});
0
只需更改控件的大小:Control.Size = new Size(x,y);
更改控件的大小將爲該控件發出resize事件,並且控件應調整大小。
或者,如果你只是想重新控制,然後做: Control.Invalidate();
0
爲什麼你想這樣做,在什麼情況下?例如,您可以調用OnResize,當您在控件本身中時(即在您的派生控件類中)。 (或通過反射,當你在外面。)
除此之外,你可能必須改變控件的大小,因爲這是Resize事件是:)
1
我總是這樣做調用控件的Resize事件處理程序:
control_Resize(null, null);
相關問題
- 1. 如何觸發調整大小事件?
- 2. 如何在不調整大小的情況下調整頁面大小?
- 3. 如何在不調整大小的情況下旋轉UITextView?
- 4. 如何在不拉伸的情況下調整圖像大小?
- 5. 如何在不拉伸的情況下調整圖像大小?
- 6. 如何在不拉伸的情況下調整圖像大小?
- 7. 如何在不滾動的情況下觸發滾動事件
- 8. 如何在不觸發事件的情況下保存數據
- 9. featherlight.js - 在不調整大小的情況下打開大圖像
- 10. 瀏覽器調整大小不會觸發「調整大小」事件
- 11. 如何在瀏覽器上觸發事件調整大小
- 12. 如何在Angular中觸發窗口大小調整事件
- 13. 如何調整實際大小::圖片
- 14. 如何在沒有IB的情況下添加大小調整
- 15. Android如何在不實際啓動的情況下觸發某個活動
- 16. 如何觸發我的jQuery腳本調整大小事件
- 17. 如何在不觸發選擇器事件的情況下調用jquery函數?
- 18. 如何在不隱藏控件的情況下調整窗口大小
- 19. 調整元素的大小會觸發窗口的大小調整事件
- 20. 在這種情況下,td auto如何調整大小?
- 21. 如何在不實際拖放的情況下使用jQuery UI Droppable觸發Drop事件?
- 22. 如何使用nvd3觸發調整大小事件?
- 23. 如何在沒有輸入的情況下觸發事件
- 24. jQuery的調整大小事件不觸發
- 25. 調整大小TinyMCE的情況下調整
- 26. SelectedIndexChanged事件在任何情況下都不會觸發
- 27. jquery事件在任何情況下都不會觸發
- 28. 如何在不破壞兒童可調整大小的情況下銷燬jquery大小調整?
- 29. orientationchange事件觸發滾動和調整大小事件
- 30. jQuery的調整大小:調整DIV的事件不會被觸發
如果您沒有調整控件大小,那麼爲什麼要調整大小? – Calanus 2009-02-05 11:12:18
如果你想*重繪*控制然後做Control.Invalidate() – Calanus 2009-02-05 11:14:59