ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [C#] TextBox 에 찾기바꾸기 기능 활용
    프로그래밍/C# 2020. 9. 29. 15:48

     ScintillaNET_FindReplaceDialog NuGet 패키지 활용하기

    NuGet 패키지 관리에서 ScintillaNET_FindReplaceDialog 패키지를 다운로드해주세요. 이 패키지의 주요 기능은 다음과 같습니다. 또한 이미 구현된 Dialog 를 사용하기 때문에 코드 몇 줄이면 사용이 가능합니다.

     

    1. 검색

    2. 바꾸기

    3. 검색 단어 강조

    4. 검색 단어를 포함하는 줄 강조

    5. 특정 라인으로 이동

     

     

     코드 적용하기

    간단한 인스턴스만 하나 해주시면 바로 사용이 가능합니다.

     

    using ScintillaNET_FindReplaceDialog;
    
    // FindReplace Declare
    private FindReplace MyFindReplace;

     

     

    KeyDown 이벤트를 통해 단축기를 만들 수 있습니다.

     

            private void TextArea_KeyDown(object sender, KeyEventArgs e)
            {
    
                #region FindReplace
                MyFindReplace.ClearAllHighlights();
    
                if (e.Control && e.KeyCode == Keys.F)
                {
                    MyFindReplace.ShowFind();
                    e.SuppressKeyPress = true;
                }
                else if (e.Shift && e.KeyCode == Keys.F3)
                {
                    MyFindReplace.Window.FindPrevious();
                    e.SuppressKeyPress = true;
                }
                else if (e.KeyCode == Keys.F3)
                {
                    MyFindReplace.Window.FindNext();
                    e.SuppressKeyPress = true;
                }
                else if (e.Control && e.KeyCode == Keys.H)
                {
                    MyFindReplace.ShowReplace();
                    e.SuppressKeyPress = true;
                }
                else if (e.Control && e.KeyCode == Keys.I)
                {
                    MyFindReplace.ShowIncrementalSearch();
                    e.SuppressKeyPress = true;
                }
                else if (e.Control && e.KeyCode == Keys.G)
                {
                    GoTo MyGoTo = new GoTo((Scintilla)sender);
                    MyGoTo.ShowGoToDialog();
                    e.SuppressKeyPress = true;
                }else if ( e.Control && e.KeyCode == Keys.B)
                {
                    string findTxt = TextArea.SelectedText;
                    MyFindReplace.FindAll(findTxt, false, true);
                    e.SuppressKeyPress = true;
    
                }
    
                #endregion
    }

     

     

     Example

     

     

     

     

    댓글

Designed by Tistory.