Dezimale Zeitwert (88,5) Std. als rechtsbündige 88:30 text

22. Juli 2016 14:13

Hallo,
ich möchte Dezimale Zeitwert (88,5) Std. als formatierte, rechtsbündigen Text anzeigen. Beispiel dafür: 88:30.
MG
Cesarion

Re: Dezimale Zeitwert (88,5) Std. als rechtsbündige 88:30 te

22. Juli 2016 16:18

Hi,

da wirst du dir eine eigene Funktion für schreiben müssen.

NAV kennt den Datentyp DURATION, dieser stellt eine Zeitspanne in Milisekunden da.

DotNet bietet auch eniges wenn es um Zeiten geht.
Hier kannst du dir ja mal diese Variablen anschauen:
DateTime
System.DateTime.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'

TimeSpan
System.TimeSpan.'mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'

Re: Dezimale Zeitwert (88,5) Std. als rechtsbündige 88:30 te

28. Juli 2016 10:27

Hi Danjo,
danke für Tipp, Du hast Recht. Dieser Schritt funktioniert.

Code:
       
protected override Control CreateControl()        {
            TextBox = new System.Windows.Forms.TextBox()
            {
                TextAlign = HorizontalAlignment.Right
            };
            return TextBox;
        }
        public override string Value
        {
            get { if (((System.Windows.Forms.TextBox)this.Control).Text != "")
                       this.RaiseControlAddInEvent(1, ((System.Windows.Forms.TextBox)this.Control).Text);
                    return ((System.Windows.Forms.TextBox)this.Control).Text; }

            set { ((System.Windows.Forms.TextBox)this.Control).Text = Convert.ToString(value) != "" ? value : "error"; }
        }


Im nächsten Schritt ich will alle so farmatierte Text-Zellen in der Liste rechtsbündig anzuzeigen. Sie sind aber nicht sichtbar :cry:

Re: Dezimale Zeitwert (88,5) Std. als rechtsbündige 88:30 te

1. August 2016 13:24

Hast du die ein ClientAddin gebaut und als Saplte eingebunden?
Es sollte genügen eine globale Variable vom Typ Text zu nehmen und das Ergebnis DotNET-Komponenten mit Hilfe von FORMAT oder ToString dort abzulegen.
Die Variable kannst du dann als Spalte anzeigen.