1

richTextBoxでデータを見つけようとしています。richTextBox1.Find("textBox1.text") のオプションを試すことができます。私はプログラミングが初めてです。このコードを一度実行すると、データが見つかり、ページ全体を選択できません。私は何度も何度も試しましたが、これはできません。もう一度私の問題は何ですか、私の問題はページ全体でデータを見つけることです。しかし、一度だけのデータを見つけて停止します。私のコーディング部分は以下のとおりです...助けてください...よろしくお願いします..

 private void gOToToolStripMenuItem_Click(object sender, EventArgs e)
    {  if (richTextBox1.Text.Trim().Length > 0)
        {
            FindMyText("joginder", 0, richTextBox1.Text.Length);

        }
    }
    public int FindMyText(string searchText, int searchStart, int searchEnd)
    {         
        int returnValue = -1;            
        if (searchText.Length > 0 && searchStart >= 0)
        {               
            if (searchEnd > searchStart || searchEnd == -1)
            {                   
                int indexToText = richTextBox1.Find(searchText, searchStart, searchEnd, RichTextBoxFinds.MatchCase);                    
                if (indexToText >= 0)
                {                        
                    returnValue = indexToText;
                } }
        }

        return returnValue;
   }  }
4

1 に答える 1

2

開始位置を進めながら、テキスト全体で検索を繰り返す必要があります。

次のようにコードを更新します。

public void FindAllMatches(string searchText)
{
    int start = 0;
    int increment = searchText.Length;
    bool complete = false;
    while (!complete)
    {
        start = richTextBox1.Find(searchText, start, RichTextBoxFinds.MatchCase);
        if (start >= 0) start += increment;
        else complete = true;
    }
}
于 2013-02-28T16:08:25.920 に答える