Exemplo n.º 1
0
 public virtual void Update(ChatMessagesViewElement.UpdateModes updateMode)
 {
     if (this.IsUpdateSuspended)
     {
         this.suspendedUpdates |= updateMode;
     }
     else
     {
         if ((updateMode & ChatMessagesViewElement.UpdateModes.InvalidateMeasure) == ChatMessagesViewElement.UpdateModes.InvalidateMeasure)
         {
             this.InvalidateMeasure(true);
         }
         if ((updateMode & ChatMessagesViewElement.UpdateModes.UpdateLayout) == ChatMessagesViewElement.UpdateModes.UpdateLayout)
         {
             this.UpdateLayout();
         }
         if ((updateMode & ChatMessagesViewElement.UpdateModes.UpdateScroll) == ChatMessagesViewElement.UpdateModes.UpdateScroll)
         {
             this.Scroller.UpdateScrollRange();
         }
         if ((updateMode & ChatMessagesViewElement.UpdateModes.Invalidate) != ChatMessagesViewElement.UpdateModes.Invalidate)
         {
             return;
         }
         this.ViewElement.Invalidate();
     }
 }
Exemplo n.º 2
0
 public virtual void EndUpdate(bool update)
 {
     this.isUpdateSuspended = false;
     if (update)
     {
         this.Update(this.suspendedUpdates);
         this.suspendedUpdates = ChatMessagesViewElement.UpdateModes.InvalidateItems;
     }
     if (!this.scrollToBottomAfterEndUpdate)
     {
         return;
     }
     this.VScrollBar.Value = this.VScrollBar.Maximum - this.VScrollBar.LargeChange + 1;
 }