日期:2014-05-18  浏览次数:20756 次

[求助] TextBox选择文本问题
有2个窗体 MainForm和SearchForm, 2个窗体各有一个TextBox控件和一个Button控件.
我的设计意图是,其实就是记事本的查找功能:
1.程序启动时只显示Main. (己实现)
2.单击MainForm中的Button显示SearchForm, 并助SearchForm始终置顶. (己实现)
3.在SearchForm的TextBox中填入一个字符(串), 单击按钮, 在MainForm中查找相应的字符串.(己实现)
4.当找到字符串时,在MainForm的TextBox中选中文本. (未实现)

我的第四步代码如下:
C# code


private MainForm mf = new MainForm();

private void button1_Click(object sender, EventArgs e)
{
    String searchString = this.textBox1.Text;

    int index = mf.textBox1.Text.IndexOf(searchString);
    if (index != -1)
    {
        mf.textBox1.Select(index, searchString.Length);
    }
}




现在出现的问题是, mf.textBox1.Select(index, searchString.Length); 语句己经起作用, 但是未在MainForm.TextBox中选中文本(没有阴影状态).

请各位知道问题所在的同学帮忙.在线等.

------解决方案--------------------
探讨
引用:
有2个窗体 MainForm和SearchForm, 2个窗体各有一个TextBox控件和一个Button控件.
我的设计意图是,其实就是记事本的查找功能:
1.程序启动时只显示Main. (己实现)
2.单击MainForm中的Button显示SearchForm, 并助SearchForm始终置顶. (己实现)
3.在SearchForm……

------解决方案--------------------
探讨

回#6楼
我也试了,而且 F1,TBox.Focus()无论放F1.TBox.Select(1,2)的前面还是后面,效果都不显示出来,就是说没有被选中的效果.

另外,发现如果是在同一窗体进行搜索的话,文本有被选中的效果.