C# 从文本框获取类属性值

C# 从文本框获取类属性值,c#,winforms,class,C#,Winforms,Class,我想知道如何用文本框的输入返回类属性的值?i、 e.nameTextBox中的输入将转到宠物类的Name属性,breedTextBox将是品种属性,等等 使用C#windows窗体 Pet pet = new Pet(); pet.Name = nameTextBox.Text; 等等 如果您的问题是如何执行此代码,请使用“更新”按钮,并在其中单击事件处理程序运行此代码,或者订阅文本框的TextChanged事件并在那里执行。(您还可以使用绑定,稍微复杂一点。请参阅。)此逻辑可以通过处理Tex

我想知道如何用文本框的输入返回类属性的值?i、 e.nameTextBox中的输入将转到宠物类的Name属性,breedTextBox将是品种属性,等等

使用C#windows窗体

Pet pet = new Pet();
pet.Name = nameTextBox.Text;
等等


如果您的问题是如何执行此代码,请使用“更新”按钮,并在其
中单击
事件处理程序运行此代码,或者订阅文本框的
TextChanged
事件并在那里执行。(您还可以使用绑定,稍微复杂一点。请参阅。)

此逻辑可以通过处理
TextBox
实例的
TextChanged
事件来完成。给定当前的
Pet
实例
m_Pet
(例如,在类中作为成员分配):

以及表单的
InitializeComponent
方法中的事件订阅:

m_TextBoxName = new TextBox();
m_TextBoxName.TextChanged += TextBoxName_TextChanged;
以下是您可以实现此目标的方法:

private void TextBoxName_TextChanged(Object sender, EventArgs e)
{
    m_Pet.Name = m_TextBoxName.Text;
}
可以对任意多个属性执行相同的操作:

private void TextBoxBreed_TextChanged(Object sender, EventArgs e)
{
    m_Pet.Breed = m_TextBoxBreed.Text;
}

private void TextBoxType_TextChanged(Object sender, EventArgs e)
{
    m_Pet.Type = m_TextBoxType.Text;
}

对“Windows窗体数据绑定”做一些研究。您可以使用多种策略来实现这一点,但没有一种“最佳实践”。您不能将WinForms添加到标记中吗?
private void TextBoxBreed_TextChanged(Object sender, EventArgs e)
{
    m_Pet.Breed = m_TextBoxBreed.Text;
}

private void TextBoxType_TextChanged(Object sender, EventArgs e)
{
    m_Pet.Type = m_TextBoxType.Text;
}