簡體   English   中英

如何導航到Windows生成的控件?

[英]How can I navigate to a windows generated control?

我有這個代碼

private void picturebox1_Paint(object sender, PaintEventArgs e)
    {
        if (Percent == 100)
        {
            e.Graphics.DrawString("Completed!", font, Brushes.Black, new Point(3, 2));
        }
    }

我想從這里導航:

public void Complete()
{
    picRooms_Paint();//How can I reach picRooms_Paint from here and draw the string?
}

任何幫助,將不勝感激!

從您的示例尚不清楚picRooms是什么,因此我無法告訴您如何從其他位置訪問其Graphics。

盡管作為對通用API的改進,最好將功能代碼從事件處理程序中移出,使其可以重用。

private void DrawComplete(Graphics g)
{
    if (Percent == 100)
    {
        g.DrawString("Completed!", font, Brushes.Black, new Point(3, 2));
    }
}

現在您可以在任何地方調用該方法;

private void picRooms_Paint(object sender, PaintEventArgs e)
{
    DrawComplete(e.Graphics)
}

public void Complete()
{
    DrawComplete(this.CreateGraphics());
}

在您的示例中也一無是處,因為Complete不執行其他任何操作,您不妨按照此示例進行操作,但將功能代碼放入Complete ,而不要像我一樣添加其他方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM