逻辑是这样,很多窗体上都有“打印”按钮,点击之后调用一个公共的窗体选择打印机名,选择完成后返回原始窗体执行打印。 需要将原始窗体信息传递到公共窗体,然后将公共窗体的选择信息返回原始窗体,各位大虾如何做啊?
解决方案 »
- 网页调用js后出现Visual Web Developer无法确定此文件的编码。的问题
- asp.net 使用正则表达式 匹配网站域名
- Replace这三句是什么意思啊
- 一个小程序,如何解决数据库问题?
- 求解:winform下,
- winform开发 本地文件夹上传到服务器 ,求代码
- 请问如何让gridview中的某些文字高亮显示
- 邮件发送(MailMessage)使用过的,高手请进,问题解决倾囊相送(如方便请客感谢)
- panle 和 toolstrip 同时设置dock为top后,如何使得toolstrip在panel的上方?
- 求助:在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级
- C#:如何解决当FORM的ENCTYPE=multipart/form-data 从POST的数据流中提取参数和文件
- 当comboBox当前的Text发生变化时,触发的是哪个事件
相当于你的原始窗体,调用公共窗体,利用构造函数传递进入你的信息 private void button3_Click(object sender, EventArgs e)
{
Form2 f2 = new Form2("我传递的信息");
f2.SelectedAEventHandle += new DelegateSelectedA(f2_SelectedAEventHandle);
f2.Show();
} /// <summary>
/// 利用回调显示回传的信息
/// </summary>
/// <param name="strMyData"></param>
private void f2_SelectedAEventHandle(string strMyData)
{
MessageBox.Show(strMyData);
}
相当于你的公共窗体,该窗体通过构造接受原始窗体的参数,
用户选择后,点击OK按钮通过委托调用原始窗体的函数,同时传递刚才用户的选择信息给原始窗体namespace WindowsApplication4
{
public partial class Form2 : Form
{
/// <summary>
/// 委托事件
/// </summary>
public event DelegateSelectedA SelectedAEventHandle; /// <summary>
///
/// </summary>
private string m_strMyData = null; /// <summary>
/// 构造函数接收参数信息
/// </summary>
public Form2(string strMyData)
{
InitializeComponent(); this.m_strMyData = strMyData;
} private void Form2_Load(object sender, EventArgs e)
{ } /// <summary>
/// 当用户点击确定后
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void m_BtnOK_Click(object sender, EventArgs e)
{
if (this.SelectedAEventHandle != null)
{
this.SelectedAEventHandle("我回传的数据");
}
this.Close();
}
} /// <summary>
/// 委托
/// </summary>
/// <param name="strMyData"></param>
public delegate void DelegateSelectedA(string strMyData);
}