我试图将我的子表单图标设置为其父表单的图标。我希望能够做类似的事情......
this.Icon = this.Parent.Icon;
当然这不起作用。有没有一种简单的方法来实现这一目标?
有时一个简单的问题是最好的方法,但在这种情况下,我认为我需要进一步详细说明(至少多一点)......
我目前尝试通过在静态类中调用静态方法来创建新表单。
public static class CustomMessageBox
{
public static DialogResult Show(string text, string caption)
{
//This is one of many methods I use for overloading
return ShowMessageBox(text, caption);
}
private static DialogResult ShowMessageBox(string text, string caption)
{
DialogResult dr = DialogResult.None;
using (var form = new CustomMessageForm(text, caption))
{
form.ShowDialog();
dr = form.MessageBoxResults;
}
//Return the results
return dr;
}
}
然后我将原始表单Form1
放在该表单上,当我想要创建我打电话的新表单时...
CustomMessageBox.Show("This is the messagebox text", "This is it's caption aka title");
所以最后当我创建新表单的时候,#34;父母"目前是CustomMessageBox
课程,而不是我的Form1
。我认为我这样做的唯一方法就是通过所有者" Form1"对象是CustomMessageBox.Show()方法,但我希望避免这种情况。
答案 0 :(得分:0)
是否有简单方法来实现这一目标? [强调我的]
创建时将图标传递给子窗体。甚至更简单 - 设置它:
Form2 f2 = new Form2 { Icon = this.Icon };//untested!
编辑问题后编辑
答案 1 :(得分:0)
尝试使用这个,当我想做同样的事情时为我工作:)
this.Icon = this.ParentForm.Icon;