Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C#] Disporre su due righe il testo di un bottone...

    Salve,
    per caso sapete se c'è un modo per fare andare a capo il testo che appare su un bottone (Button) quando questo arriva al margine? O almeno se è possibile disporlo manualmente su due o più righe (inserendo il carattere \n non funziona)?

    Grazie a tutti.

    Ciao.

  2. #2
    Ho trovato la soluzione. Dato che potrebbe essere utile ad altri, la incollo qui di seguito:

    On the newsgroup somebody asked how to have multiple lines of text on a .NETCF Button control. The native control supports this but the appropriate style is not set by default. The following code snippet shows how to enable this:-

    codice:
    private const int BS_MULTILINE = 0x00002000;
    private const int GWL_STYLE = -16;
    
    [System.Runtime.InteropServices.DllImport("coredll")]
    private static extern int GetWindowLong(IntPtr hWnd, int nIndex);
    
    [System.Runtime.InteropServices.DllImport("coredll")]
    private static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);
    
    public static void MakeButtonMultiline(Button b)
    {
        IntPtr hwnd = b.Handle;
        int currentStyle = GetWindowLong(hwnd, GWL_STYLE);
        int newStyle = SetWindowLong(hwnd, GWL_STYLE, currentStyle | BS_MULTILINE);
    }
    The usage is simple, just pass the specific Button control to MakeButtonMultiline:-

    codice:
    MakeButtonMultiline(button1);
    L'ho provato, e funziona alla perfezione .

    Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2009
    Messaggi
    970
    Non so che codice tu abbia messo ma se inserisci:

    codice:
     Button1.Text = "Button1" + "\n" + "ciao" + "\n" + "prova";
    le tre stringhe appaiono una sotto l'altra.
    Sbagliare è umano, perseverare è diabolico.

  4. #4
    Originariamente inviato da Pirelli72
    Non so che codice tu abbia messo ma se inserisci:

    codice:
     Button1.Text = "Button1" + "\n" + "ciao" + "\n" + "prova";
    le tre stringhe appaiono una sotto l'altra.
    Sto usando il .net compact framework, ovvero la versione per cellulari, può darsi che sia per questo che non va con il semplice newline. Non ho mai provato con la versione per pc.
    In ogni caso, se inserisco il testo che mi hai detto tu al posto del \n mi appare un quadratino, evidentemente un carattere non risconosciuto, e la stringa non va a capo.

    Ciao

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 © 2025 vBulletin Solutions, Inc. All rights reserved.