我發現“Windows Forms App (.NET Core)”專案缺乏普通“.NET framework”應用程式的功能。我專門使用 .NET Core 3.1。
我希望能夠在物件上引發表單事件,但找不到方法來做到這一點。在我的示例中,我想在 System.Windows.Forms.TextBox 上呼叫 click。我知道呼叫 TextBox.Focus() 基本上會模擬行為,但這不是重點。
為表單應用程式物件呼叫事件處理程式也不能完成這項作業。它只呼叫我的自定義代碼,而不是實際的基本事件處理程式。并且 Control.RaiseEvent 在 .NET 核心中不存在。我不認為 Control.Invoke 也可以完成這項作業,但我還沒有測驗過。
uj5u.com熱心網友回復:
答案是控制元件事件可以通過子類控制元件呼叫。例如
public class TestPictureBox : PictureBox
{
public void CallClick(EventArgs e = null) => base.OnClick(e ?? EventArgs.Empty);
public void CallResize(EventArgs e = null) => base.OnResize(e ?? EventArgs.Empty);
}
使用這些示例函式,您可以引發控制元件的事件。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/361426.html
下一篇:如何正確使用這里的計數功能?
