Autore Topic: [RISOLTO] Proprietà Alignment di un controllo personalizzato  (Letto 521 volte)

Offline gianfry56

  • Gambero
  • **
  • Post: 78
    • Mostra profilo
Questa (molto semplificata) è una parte di codice di un controllo personalizzato che, pur funzionando perfettamente, non mi convince per quanto riguarda la prorietà Alignment:

Codice: [Seleziona]
Export
Inherits UserControl

Public Const _Properties As String = "*,Alignment"
Public Const _DrawWith As String = "TextBox"

Property Alignment As Integer
Private iAlignment As Integer

Private hPanel As Panel
Private hControl As TextBox

Public Sub _new()
  hPanel = New Panel(Me)
  hControl = New TextBox(hPanel)
  hPanel.Arrangement = Arrange.Fill
End

Private Function Alignment_Read() As Integer
  Return iAlignment
End

Private Sub Alignment_Write(Value As Integer)
  iAlignment = Value
  hControl.Alignment = Value
End

Alignment sappiamo che è una proprietà di tipo Integer che utilizza i valori di Align.Normal (0), Align.Left (1), Align.Right (2) e Align.Center (3)

ora, dopo aver inserito questo controllo nel form, posso andare a modificare l'allineamento del textbox (e funziona) SOLO inserendo dei VALORI INTEGER (0,1,2 e 3) e non sfruttando il classico combo a discesa con Normal, Left, Right e Center.... perché ?   :hard:

cosa dovrei fare, secondo voi, per correggere questa anomalia?  :-\

(non ditemi che non ho cercato sul forum o in rete, perché non è vero... su Alignment documentazione = zero)  :hatecomputer:

 :ciao:
« Ultima modifica: 29 Dicembre 2016, 11:57:36 da gianfry56 »

Offline gianfry56

  • Gambero
  • **
  • Post: 78
    • Mostra profilo
Re:Proprietà Alignment di un controllo personalizzato
« Risposta #1 il: 28 Dicembre 2016, 11:58:39 »
In questo esempio http://www.gambas-it.org/smf/index.php?topic=2122.msg23364#msg23364 Alignment viene gestita con una proprietà di tipo String che non mi pare la soluzione migliore...

Offline Gianluigi

  • Moderatore globale
  • Senatore Gambero
  • *****
  • Post: 4.244
  • Tonno verde
    • Mostra profilo
Re:Proprietà Alignment di un controllo personalizzato
« Risposta #2 il: 28 Dicembre 2016, 12:13:40 »
Scusa tanto per l'errore nella risposta, come è quella della gatta che ha premura?  ;D

Hai ragione devi cambiare solo così:
Codice: [Seleziona]
Public Const _Properties As String = "*,Alignment{Align.Normal;Left;Center;Right}=Normal

 :ciao:
« Ultima modifica: 28 Dicembre 2016, 13:14:46 da Gianluigi »
nuoto in attesa del bacio di una principessa che mi trasformi in un gambero azzurro

Offline gianfry56

  • Gambero
  • **
  • Post: 78
    • Mostra profilo
Re:Proprietà Alignment di un controllo personalizzato
« Risposta #3 il: 28 Dicembre 2016, 13:20:52 »
Grazie Gianluigi, questa mi mancava.... funziona perfettamente  :ok: :ok: :ok: