/// <summary> /// Change a <see cref="GenericTimeModel" /> object so that its displayed text represents the properties of this object. /// </summary> /// <param name="model">The object to be updated.</param> /// <param name="formats">The format strings to use for displaying times, or null if not available.</param> public void UpdateModel(GenericTimeModel model, TimeDisplayFormattingStrings formats) { if (model == null) { return; } // Use the Text property if this has been set. if (!string.IsNullOrWhiteSpace(Text)) { model.ActualTime = null; model.DisplayedText = Text; } // If the Text property has not been set, use the time. Format the time using the supplied parameter if available. else if (AtTime != null) { model.ActualTime = AtTime.Copy(); if (formats == null) { model.DisplayedText = AtTime.ToString(); // This will be updated later with the correct formatting string. } else { model.DisplayedText = AtTime.ToString(formats.TimeWithoutFootnotes, CultureInfo.CurrentCulture); } } else { model.ActualTime = null; model.DisplayedText = ""; } }
public override string ToString() { return($"{{{nameof(MsgId)}={MsgId}, " + $"{nameof(PkTotal)}={PkTotal}, " + $"{nameof(PkNumber)}={PkNumber}, " + $"{nameof(RegisteredDelivery)}={RegisteredDelivery}, " + $"{nameof(MsgLevel)}={MsgLevel}, " + $"{nameof(ServiceId)}={ServiceId?.TrimEnd('\0')}, " + $"{nameof(FeeUserType)}={FeeUserType}, " + $"{nameof(FeeTerminalId)}={FeeTerminalId.TrimEnd('\0')}, " + $"{nameof(FeeTerminalType)}={FeeTerminalType}, " + $"{nameof(TPPId)}={TPPId}, {nameof(TPUdhi)}={TPUdhi}, " + $"{nameof(MsgFmt)}={MsgFmt}, {nameof(MsgSrc)}={MsgSrc}, " + $"{nameof(FeeType)}={FeeType.TrimEnd('\0')}, " + $"{nameof(FeeCode)}={FeeCode.TrimEnd('\0')}, " + $"{nameof(ValidTime)}={ValidTime.TrimEnd('\0')}, " + $"{nameof(AtTime)}={AtTime.TrimEnd('\0')}, " + $"{nameof(SrcId)}={SrcId.TrimEnd('\0')}, " + $"{nameof(DestUsrTl)}={DestUsrTl}, " + $"{nameof(DestTerminalId)}={(DestTerminalId.Length>0?DestTerminalId[0].TrimEnd('\0'):"")}, " + $"{nameof(DestTerminalType)}={DestTerminalType}, " + $"{nameof(MsgLength)}={MsgLength}, " + $"{nameof(MsgContent)}={MsgContent}, " + //$"{nameof(LinkId)}={LinkId?.TrimEnd('\0')}, " + $"{nameof(Reserve)}={Reserve?.TrimEnd('\0')}}}"); }
/// <summary> /// Overwrite another object's contents with a copy of the contents of this object. /// </summary> /// <param name="target">The object to be overwritten.</param> public void CopyTo(ToWork target) { if (target == null) { throw new ArgumentNullException(nameof(target)); } target.AtTime = AtTime?.Copy(); target.Text = Text; }
/// <summary> /// Serilize this object's properties to XML. /// </summary> /// <param name="writer">Destination to write XML to.</param> public void WriteXml(XmlWriter writer) { if (writer is null) { throw new ArgumentNullException(nameof(writer)); } if (AtTime != null) { writer.WriteStartElement("AtTime"); AtTime.WriteXml(writer); writer.WriteEndElement(); } if (Text != null) { writer.WriteElementString("Text", Text); } }
public event TimerHandler AtTime2; //事件容器 private void timer1_Tick(object sender, EventArgs e) { label1.Text = DateTime.Now.ToString("yyyy-MM-dd hh:mm:ss"); if (this.AtTime != null) // 先判斷 Form1 是否有事件 { AtTime.Invoke(this, new TimerEventArgs() { CurrentTime = DateTime.Now }); //呼叫事件 } if (this.AtTime2 != null) { AtTime2.Invoke(this, new TimerEventArgs() { CurrentTime = DateTime.Now }); //呼叫事件 } }
/// <summary> /// Make a copy of this object. /// </summary> /// <returns>A copy of this object.</returns> public ToWork Copy() { return(new ToWork { AtTime = AtTime?.Copy(), Text = Text }); }