我需要用格式完成Visual Studio上的程序,我有一个文本框(txtUser),另一个文本框(txtKerko)和一个按钮(btnKerko)。所以程序是这样的,用户在txtUser上写一些文本,然后在txtKerko上写任何单词或文本,当单击btnKerko时,应该在txtUser上选择在txtKerko上写的单词,如果所有单词中有多个应该在每次btnKerko点击时都选择一个。它已经差不多准备好了,但是当一个以上的单词一个接一个地递增时,我无法完成任务。这是btnKerko的事件代码:
private void BtnKerko_Click(object sender, EventArgs e)
{
if (txtUser.Text.Contains(txtKerko.Text) == true)
{
txtUser.Focus();
string teksti = txtUser.Text;
txtUser.SelectionStart = teksti.IndexOf(txtKerko.Text);
txtUser.SelectionLength = txtKerko.TextLength;
}
else
{
MessageBox.Show("Nuk u gjet");
}
}
答案 0 :(得分:2)
是的,如果您想要一个一个地选择单词,则可以这样做。您可以使用以下代码:
int lastIndex = 0;
private void BtnKerko_Click(object sender, EventArgs e)
{
txtUser.Focus();
int index = txtUser.Text.IndexOf(txtKerko.Text, lastIndex);
if (index != -1)
{
lastIndex = index + 1;
txtUser.SelectionStart = index;
txtUser.SelectionLength = txtKerko.TextLength;
}
}
如您所见,变量lastIndex
保持着按钮的每次单击中的最后选择。我猜您知道IndexOf
方法的第二个参数告诉您开始从该第二个参数值中查找索引。