文本框 c# 引用字符串
本文关键字:字符串 引用 文本 | 更新日期: 2023-09-27 18:35:20
是否可以喜欢在 c# 中将字符串引用为文本框的内容?我有一个列表框,里面有一堆对象。每个对象都包含一个字符串。当我在列表框中选择一个对象时,我希望它的字符串是文本框中的内容,以便我写的任何内容都会保存到字符串中。
例如,在Java中,您可以在对象中具有PlainDocument,并且每当在JList中选择其他对象时,都可以将JTextField中的文档设置为对象PlainDocument。
可以将数据绑定用于自动化解决方案,也可以手动侦听列表框的 SelectedIndexChanged 事件,并在事件处理程序中设置 Text 属性。
listBox1.SelectedIndexChanged += (o, e) => {
object selectedItem = listBox1.SelectedItem;
textBox1.Text = selectedItem != null ? selectedItem.ToString() : null;
};
可以使用以下命令访问文本框的内容
myTextBox.Text
此属性需要字符串,因此您的答案是"是"。我认为简单地分配此属性就可以了。
更新
我认为你需要这样的东西(假设你正在使用WinForms):
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if(listBox1.SelectedItem != null)
textBox1.Text = listBox1.SelectedItem.ToString();
}
private void button1_Click(object sender, EventArgs e)
{
int index = listBox1.Items.IndexOf(listBox1.SelectedItem);
listBox1.Items.Remove(listBox1.SelectedItem);
listBox1.Items.Insert(index, textBox1.Text);
}
虽然WinForms中有一个针对文本框的TextChanged事件的操作,但是从那里更改列表框有点棘手(最终无限地相互调用),因为我们已经从列表框的更改事件更改文本框。
添加一个按钮来执行此操作可以大大简化它。