C# winform 如何在两个窗体之间传递字体信息

gnefgnehz 2010-10-21 10:33:40
前段时间做了一个字体设置的窗体,先在我要把他运用起来,简单来说就是 我有连个窗体,一个是Form1 另一个字体设置窗体Form2,当我点击Form1上的一个button是将弹出Form2 ,这时候将Form1中的字体信息反映在Form2 中(这一步我已经实现),然后问题就是当我在Form2中设置完在字体后,如何将字体反映到Form1 呢?
...全文
163 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
老董杂货铺 2010-10-22
  • 打赏
  • 举报
回复
用构造函数传递信息也可以的.
gnefgnehz 2010-10-21
  • 打赏
  • 举报
回复
不过我还是不明白,为什么少了一个this就不行了呢?
gnefgnehz 2010-10-21
  • 打赏
  • 举报
回复
我试了下,3# 的这句话 ((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text; //设置属性
其实可以改成 frm1.textBox1.Text = this.textBox2.Text;这样好理解点,呵呵
gnefgnehz 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 fangxinggood 的回复:]

引用 5 楼 gnefgnehz 的回复:
引用 2 楼 fangxinggood 的回复:

补充: 可以把父窗体的引用传给子窗体,子窗体选择字体完毕的时候,直接改。

this.Owner.Font ...


如何将父类的引用传递给子类呢?


看#3楼代码。。。Show(this)
[/Quote]

谢谢了,搞了半天原来少了一个this,真是冤枉啊,呵呵……
denbes 2010-10-21
  • 打赏
  • 举报
回复
公共变量
public string com=string.Empty;
机器人 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gnefgnehz 的回复:]
引用 2 楼 fangxinggood 的回复:

补充: 可以把父窗体的引用传给子窗体,子窗体选择字体完毕的时候,直接改。

this.Owner.Font ...


如何将父类的引用传递给子类呢?
[/Quote]

看#3楼代码。。。Show(this)
xshf12345 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gnefgnehz 的回复:]

引用 2 楼 fangxinggood 的回复:

补充: 可以把父窗体的引用传给子窗体,子窗体选择字体完毕的时候,直接改。

this.Owner.Font ...


如何将父类的引用传递给子类呢?
[/Quote]

当然属性可以是任何类型的
xshf12345 2010-10-21
  • 打赏
  • 举报
回复
可以使用属性
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Str="Hello,Baby";
frm2.Show(this);
}
}

public partial class Form2 : Form
{

private string _str;
public string Str
{
set{this._str=value;}
}
private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = (Form1)this.Owner;
((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text; //设置属性
this.Close();
}
}
gnefgnehz 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 fangxinggood 的回复:]

补充: 可以把父窗体的引用传给子窗体,子窗体选择字体完毕的时候,直接改。

this.Owner.Font ...
[/Quote]

如何将父类的引用传递给子类呢?
zhou44871 2010-10-21
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 wuyq11 的回复:]
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Show(this);
}
}

public partial cla……
[/Quote]
就是这样的
wuyq11 2010-10-21
  • 打赏
  • 举报
回复
public partial class Form1 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Form2 frm2 = new Form2();
frm2.Show(this);
}
}

public partial class Form2 : Form
{
private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = (Form1)this.Owner;
((TextBox)frm1.Controls["textBox1"]).Text = this.textBox2.Text; //设置属性
this.Close();
}
}
机器人 2010-10-21
  • 打赏
  • 举报
回复
补充: 可以把父窗体的引用传给子窗体,子窗体选择字体完毕的时候,直接改。

this.Owner.Font ...

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧