2009-11-14 3 views
0

2 문제 : 구글 크롬에서선택한 텍스트에 대해 상황에 맞는 메뉴를 표시하려면 어떻게해야합니까? &

  1. 당신이 단어를 선택하면 (problem를 말) 후 바로이 선택한 텍스트를 클릭 컨텍스트 메뉴는 problem 3 구글 1. 복사 2.Search 두 항목을 보여줍니다 . 요소를 점검하다. 컨텍스트 메뉴는 전체 창 컨텍스트 메뉴와 다릅니다. 선택한 텍스트에 대해이 별도의 상황에 맞는 메뉴를 표시하려면 어떻게합니까?

    내가 수행하려고하는 정확한 작업은 다음과 같습니다. winforms에있는 텍스트 상자가 있습니다. 이제 사용자 rt가 클릭하면 컨텍스트 메뉴에 paste이 표시됩니다. 텍스트 상자에 텍스트가 채워지고 사용자가 텍스트를 선택한 다음 선택한 텍스트를 마우스 오른쪽 버튼으로 클릭하면 항목이있는 상황에 맞는 메뉴 (복사, 잘라 내기, 붙여 넣기, 모두 선택)가 표시됩니다. 어떻게?

    1. 복사
    2. 편집 메뉴 (컨텍스트 메뉴)
    3. Ctrl + C

모든 않습니다 같은 일 : 텍스트 사용자를 복사

  • 3 가지 옵션이 있습니다 선택한 데이터를 클립 보드에 복사합니다. 원하는 데이터를 클립 보드에 복사하는 3 가지 방법을 사용하여 선택한 데이터를 복사하는 기능을 덮어 쓰려고합니다. 방법?

  • +0

    당신이하려는 것은 분명하지 않습니다 ... 더 잘 설명 할 수 있습니까? –

    답변

    1

    사용자 지정 ContextMenuStrip을 TextBox의 ContextMenuStrip 속성에 지정할 수 있습니다. 따라서 나는 내 자신을 인스턴스화하고 복사/붙여 넣기 항목과 필요한 다른 항목으로 채 웁니다. 그런 다음 ContextMenuStrip의 Opening 이벤트를 처리하여 TextBox에 선택된 텍스트가 있는지 확인하고 표시되기 바로 전에 메뉴 항목을 수정 (즉, 'Google 검색'항목의 Visible 속성 변경) 할 수 있습니다.

     
    private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
    { 
        var item = searchGoogleMenuItem; 
        if (item.Visible = !string.IsNullOrEmpty(textBox1.SelectedText)) 
         item.Text = string.Format("Search Google '{0}'", textBox1.SelectedText); 
    } 
    
    관련 문제