将列表视图项传递给另一种形式的文本框
Passing listview item to textbox in another form
我目前正在开发一个显示同事是否在工作的应用程序。为了让管理它的人使用 'easy',我希望用户能够双击用户的列表视图项,提示 window 其中的状态那个人是可以改变的。
用所选人员的缩写(作为所用数据库的主键)提示一个消息框是相当容易的。但是,我希望将此缩写传递到另一个 window.
中的文本框
这是我用来启动 window 来更改员工状态的方法:
frmStatusEdit SE = new frmStatusEdit();
SE.Show();
请记住:这段代码工作正常; window 启动没有任何问题。但是,双击用户后,window 启动时没有包含其缩写的文本框。
出于某种原因我无法让它工作,尽管使用了这条线,它成功地与消息框一起工作:
MessageBox.Show(lvEmployees1.SelectedItems[0].Text);
当我使用它时(SE 指的是另一个 window),没有任何反应:
if (lvEmployees1.SelectedItems.Count > 0)
{
string listItem = lvEmployees1.SelectedItems[0].Text;
SE.tbxAbbrevEmployee.Text = listItem;
}
我一直在寻找解决方案并遇到了几个,但 none 似乎解决了这个问题。也没有显示任何错误消息,这使得找出我做错了什么变得更加困难。
有人知道我可能做错了什么吗?我对编码不是很有经验,所以很容易忘记我的情况。
试试这个,从单击按钮到列表视图双击获取代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var form2 = new Form2
{
Message = "Hello World"
};
form2.ShowDialog();
}
}
public partial class Form2 : Form
{
public string Message { get; set; } = "";
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = Message;
}
}
Form2 的另一个选项:
public partial class Form2 : Form
{
private string _message = "";
public string Message
{
get { return _message; }
set
{
_message = value ?? "";
textBox1.Text = _message;
}
}
public Form2()
{
InitializeComponent();
}
}
我目前正在开发一个显示同事是否在工作的应用程序。为了让管理它的人使用 'easy',我希望用户能够双击用户的列表视图项,提示 window 其中的状态那个人是可以改变的。
用所选人员的缩写(作为所用数据库的主键)提示一个消息框是相当容易的。但是,我希望将此缩写传递到另一个 window.
中的文本框这是我用来启动 window 来更改员工状态的方法:
frmStatusEdit SE = new frmStatusEdit();
SE.Show();
请记住:这段代码工作正常; window 启动没有任何问题。但是,双击用户后,window 启动时没有包含其缩写的文本框。
出于某种原因我无法让它工作,尽管使用了这条线,它成功地与消息框一起工作:
MessageBox.Show(lvEmployees1.SelectedItems[0].Text);
当我使用它时(SE 指的是另一个 window),没有任何反应:
if (lvEmployees1.SelectedItems.Count > 0)
{
string listItem = lvEmployees1.SelectedItems[0].Text;
SE.tbxAbbrevEmployee.Text = listItem;
}
我一直在寻找解决方案并遇到了几个,但 none 似乎解决了这个问题。也没有显示任何错误消息,这使得找出我做错了什么变得更加困难。
有人知道我可能做错了什么吗?我对编码不是很有经验,所以很容易忘记我的情况。
试试这个,从单击按钮到列表视图双击获取代码:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
var form2 = new Form2
{
Message = "Hello World"
};
form2.ShowDialog();
}
}
public partial class Form2 : Form
{
public string Message { get; set; } = "";
public Form2()
{
InitializeComponent();
}
private void Form2_Load(object sender, EventArgs e)
{
textBox1.Text = Message;
}
}
Form2 的另一个选项:
public partial class Form2 : Form
{
private string _message = "";
public string Message
{
get { return _message; }
set
{
_message = value ?? "";
textBox1.Text = _message;
}
}
public Form2()
{
InitializeComponent();
}
}