如何在 C# 中将文本框值从一个用户控件获取到另一个用户控件

how to get textbox value from one user control to other in c#

本文关键字:用户 控件 一个 另一个 获取 文本      更新时间:2023-09-26

我有两个用户控件。在第一个用户控件()中,我有一个textbox

现在在我的第二个用户控件(测试)中,我想获取该textbox的值。

在我的页面中,当用户在第一个usercontrol texbox输入一个值时,我如何在第二个usercontrol的隐藏字段中获取它

我该怎么做??

我的用户控件中有这些属性

用户控件

public string Class_ClientId
        {
            get { return txtClass.ClientID; }
        }
public string Class_Text
        {
            get { return Class; }
            set
            {
                if (value != Class)
                {
                    Class = value;
                    txtClass.Text = Class;
                }
            }
        }

测试用户控件

public string KMAT_Text
        {
            get { return KMATName; }
            set
            {
                if (value != KMATName)
                {
                    KMATName = value;
                    txtKmat.Text = KMATName;
                }
            }
        }
 public string Class
        {
            get { return _hdnClass; }
            set
            {
                if (value!= _hdnClass)
                {
                    _hdnClass = value;
                    hdnClass.Value = _hdnClass;
                }
            }
        }

有多种方法可以做到这一点。 最容易实现的是在第一个用户控件上定义更改事件:

public event EventHandler SomethingChanged;
protected void OnSomethingChanged(EventArgs e)
{
   if (SomethingChanged != null)
     SomethingChanged(this, e);
}
public string Class_Text
        {
            get { return Class; }
            set
            {
                if (value != Class)
                {
                    Class = value;
                    txtClass.Text = Class;
                    this.OnSomethingChanged(EventArgs.Empty);
                }
            }
        }
让页面

侦听它,并让页面将值传递给第二个用户控件。