Form1代码
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
textBox1.Text = DateTime.Now.ToString();
Form2 form2 = new Form2();
form2.event_getstr += new getstr(_setstr);
form2.event_setstr += new setstr(_getstr);
form2.Show();
}
void _getstr(string str)
{
textBox1.Text = str;
}
string _setstr()
{
return this.textBox1.Text;
}
}
Form2代码
public delegate string getstr();
public delegate void setstr(string str);
public partial class Form2 : Form
{
public event getstr event_getstr;
public event setstr event_setstr;
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = event_getstr();
}
private void button1_Click(object sender, EventArgs e)
{
event_setstr(this.textBox1.Text);
}
}
分享到:
相关推荐
在C#编程中,自定义控件是一种强大的工具,它允许开发者根据特定需求扩展或定制标准控件的功能。本文将深入探讨如何创建自定义控件、添加属性以及为它们添加事件,以提升软件界面的交互性和用户体验。 首先,我们要...
在本压缩包"C#WinForm初学Demo.zip"中,我们关注的是C#编程语言用于构建Windows桌面应用程序的WinForms技术。Visual Studio 2019是开发环境,它为创建、测试和调试WinForms应用提供了强大的支持。通过这个Demo,初学...
在C# WinForm应用开发中,常常需要在子窗体与父窗体之间进行交互,例如更新数据或者控制父窗体中的控件状态。本文将详细介绍如何在子窗体中刷新父窗体以及如何从子窗体改变父窗体控件的值。 首先,我们需要理解...
理解窗体(Form)、控件(Control)、事件(Event)和委托(Delegate)的基本原理是WinForm开发的基石。 三、设计工具与布局管理 Visual Studio作为主要的开发环境,提供了直观的拖放界面设计工具,使得开发者可以...
### WinForm窗体间事件调用 #### 概述 在Windows Forms应用程序开发过程中,我们经常需要实现不同窗体间的交互。例如,在一个窗体中触发另一个窗体上的某个事件,这种需求在很多应用场景中非常常见。本文档将详细...
源码中应该展示了如何通过`event`和`delegate`来定义和触发事件处理函数,这是C#中事件驱动编程的关键。 4. **数据绑定**:可能还包含了数据绑定的概念,比如将控件的数据源绑定到数据库或其他数据集,使得数据的...
7. **数据绑定**:WinForm支持数据绑定,可以将控件的数据源设置为数据库、数组或其他数据集,实现数据的动态展示和更新。 8. **文件操作**:学习如何使用C#读写文件,例如XML、文本文件或CSV,这是很多实用WinForm...
在Winform中,控件通常会引发事件,比如按钮的Click事件。事件的处理是通过事件处理程序,这些处理程序是通过委托来注册的。当事件发生时,注册的处理程序将被调用。 在"winform委托和事件经典例子"这个主题中,...
在C# Winform应用程序中,页面间的通信是一个常见的需求,特别是在多窗口或多个用户界面组件交互的情况下。"委托"是C#中一个强大的特性,它允许我们传递方法作为参数,从而实现事件处理和异步编程。在这个场景下,...
在C# WinForm应用开发中,委托是一种强大的工具,它允许我们传递方法作为参数,实现事件处理和异步编程。本文将深入探讨如何利用委托来控制多个窗口同时执行的事件,以及如何避免页面刷新问题,确保应用的高效运行。...
首先,我们要明白在C#中,事件是由委托(Delegate)来处理的,而控件的事件是通过事件处理程序列表(EventHandlerList)进行管理的。要移除控件的某个事件,我们需要访问这个列表并找到相应的事件处理程序。 以下是...
在WinForm中,事件经常与控件(如按钮、文本框等)的用户交互行为关联,但也可以用于更复杂的逻辑,例如我们的磁性窗口移动。 实现磁性窗口移动的关键在于捕获鼠标移动事件,以及计算鼠标位置与窗口边界的相对关系...
- `C#Winform委托事件实现窗体信息传递实例源代码`中可能包含了以下几个关键文件: - 主窗体(如`Form1.cs`):定义事件和触发事件的代码。 - 子窗体(如`Form2.cs`):订阅事件和处理事件的代码。 - 共享的委托...
在C#编程中,消息传递是UI组件之间通信的关键机制,特别是当我们在用户控件(UserControl)和主窗体(Form)之间需要交换数据时。本文将深入探讨如何使用委托(Delegate)来实现这一目标,确保代码的灵活性和可维护性。 ...
在C#编程中,委托和事件是两种非常重要的机制,它们是实现对象间通信的关键工具。在Windows Forms(Winform)应用开发中,通过委托和事件,我们可以让不同的窗体之间进行数据传递,使得程序的模块化设计更加灵活。...
3. **设置属性**:选中TabControl,通过属性窗口调整其`Dock`属性为`Fill`。这样,TabControl就会自动填充整个窗体,无论窗体大小如何改变,TabControl都会保持填充状态。 接下来,我们将讨论如何实现选项卡的关闭...
### C# 自定义控件入门教程详解 #### 一、引言 在.NET框架中,C# 是一种广泛使用的编程语言,特别是在Windows Forms应用程序开发中。自定义控件的开发对于提升应用程序的功能性和美观性至关重要。本文将详细介绍...
- **控件属性**:每个控件都有自己的属性,如Text、ForeColor、BackColor等,通过修改这些属性可以改变控件的外观和行为。 - **控件事件**:控件会触发各种事件,比如点击按钮时会触发Click事件。通过编写事件处理...
本文将详细介绍如何在C#中创建一个简单的自定义WinForm控件,并探讨如何为控件添加属性、处理事件以及实现异步调用。 首先,创建自定义控件的基本步骤如下: 1. **继承自Control类**: 我们创建一个名为`...