Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 18 su 18
  1. #11
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Originariamente inviato da gibra
    Perchè non disabiliti il TextBox?
    A quel punto potrebbe usare una label e non ha più problemi di selezione. Penso debba comunque scrivere sulla texbox ma non permettere il copia/incolla. Ad esempio come potrebbe succedere sulle texbox della password e conferma password.
    Comunque mi ero dimenticato una riga, ecco il codice, provato e funziona, puoi selezionare il testo ma non copia e non incolla.

    codice:
     private void textBox1_KeyDown(object sender, KeyEventArgs e)
            {
                Clipboard.Clear();
                if (textBox1.SelectedText.Length > 0)
                {
                    textBox1.SelectionLength = 0;
                }
            }
    
                  private void textBox1_MouseClick(object sender, MouseEventArgs e)
                  {
                      textBox1_KeyDown(null, null);
                  }
    Ricordati di utilizzare un contexMenuStrip vuoto e di aasegnarlo alla textbox.
    Sbagliare è umano, perseverare è diabolico.

  2. #12
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    OK, ma svuotare la Clipboard non è proprio corretto.
    Pensiamo se tutti i programmi agissero così...

    può essere utile subclassare il textbox, esempio:
    http://www.codeproject.com/KB/edit/TNumEditBox.aspx


  3. #13
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Originariamente inviato da gibra
    OK, ma svuotare la Clipboard non è proprio corretto.
    Se copiasse il contenuto della textbox nella Clipboard la svuoterebbe comunque.


    può essere utile subclassare il textbox, esempio:
    http://www.codeproject.com/KB/edit/TNumEditBox.aspx
    Ci avevo pensato ma mi sembrava improponibile solo per evitare un copia/incolla.
    Sbagliare è umano, perseverare è diabolico.

  4. #14
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Scusa Pirelli72 quando dici di assegnare ad un contexMenuStrip la textbox intendi questo:
    codice:
    private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
            {
                txtVisual.Text = Convert.ToString(contextMenuStrip1);
            }
    Ho provato cio che mi hai postato e con CTRL+C non copia, però se uso il tasto destro mouse il copia ed incolla è ancora attivo.
    Forse nei passaggi precendenti non ho disattivato il tasto destro del mouse, potresti darmi la procedura.

  5. #15
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Originariamente inviato da Ironmax
    Scusa Pirelli72 quando dici di assegnare ad un contexMenuStrip la textbox intendi questo:
    codice:
    private void contextMenuStrip1_Opening(object sender, CancelEventArgs e)
            {
                txtVisual.Text = Convert.ToString(contextMenuStrip1);
            }
    No.
    Aggiungi al progetto un ContexMenùStrip trascinandolo dalla ToolBox degli strumenti (come faresti per un Timer) senza modificarlo. Ora vai nelle proprietà della TextBox in questione e imposti la proprietà .ContextMenuStrip con quella aggiunta al progetto. Ovvero se scritto via codice

    codice:
    TextBox1.ContextMenuStrip= ContextMenuStrip1
    Ma tu lo puoi fare anche in modalità Design.
    Sbagliare è umano, perseverare è diabolico.

  6. #16
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Originariamente inviato da Pirelli72
    Se copiasse il contenuto della textbox nella Clipboard la svuoterebbe comunque.
    Scusa, allora sono io che non ho capito.
    Io avevo inteso che non deve essere possibile copiare nella Clipboard.

    A parte questo, in generale una cosa è che l'utente esegua deliberatamente e coscientemente una azione di copia nella Clipboard; un'altra è che lo faccia il programma senza che l'utente sappia niente.


    Originariamente inviato da Pirelli72
    Ci avevo pensato ma mi sembrava improponibile solo per evitare un copia/incolla.
    Potrebbe essere motivo di studio per Ironmax, consentendogli di accrescere le proprie conoscenze. D'altra parte, chi pubblica articoli e codice lo fa proprio con lo scopo di condividere la conoscenza.
    In questo caso, mi pare che fare un semplice copia e incolla del codice dell'articolo non sia sufficiente dato che non fa esattamente quello che serve ad Ironmax.
    Infatti mostra come intercettare il messaggio WM_PASTE, mentre ad Ironmax serve intercettare il WM_COPY.

    Infine è utile per imparare a crearsi un controllo personalizzato per le proprie esigenze.


  7. #17
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Come non darti ragione!
    Sbagliare è umano, perseverare è diabolico.

  8. #18
    Utente di HTML.it L'avatar di Ironmax
    Registrato dal
    Dec 2008
    Messaggi
    1,026
    Funziona!!!
    Grazie Pirelli72 della tua collaborazione e pazienza.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.